Mostrando las entradas con la etiqueta bot. Mostrar todas las entradas
Mostrando las entradas con la etiqueta bot. Mostrar todas las entradas

martes, 1 de julio de 2008

¿Alguna vez viste a un bot?

Un bot es algo bastante menos interesante que la imagen de la izquierda. Como ya dijimos en el post anterior, se trata "de un simple programita que visita páginas de internet de manera automática, las copia, las manda al “Page Depository”, luego visita cada uno de los links que tenía esa página y así sucesivamente."

Yo nunca había visto un bot, hasta que me crucé con uno en el libro "Google PageRank and Beyond". Me pareció muy simpático así que decidí ponerlo en un post.

Está escrito en lenguaje "Matlab", y la intención no es entrar en el detalle de cada línea de código (lo que está muchísimo más allá de mis posibilidades), sino sólo saber de que se trata. Matlab tiene dos comandos interesantes para la creación de bots: uno que se llama "urlread" que permite leer la página, y otro llamado "urlwrite" que permite copiarla para pasarla al "Page repository".

Ahí va, a no desmayarse:

function [U,L] = surfer(root,n)
% SURFER Create the adjacency matrix of a portion of the Web.
% [U,L] = surfer(root,n) starts at the URL root and follows
% Web links until it forms an n-by-n adjacency matrix of links.
% U = a cell array of the URLs visited.
% L = sparse matrix with L(i,j)=1 if url {i} is linked to url {j}.
%
% Example: [U,L] = surfer('http://www.harvard.edu',500);
%
% This function currently has two defects. (1) The algorithm for
% finding links is naive. We just look for the string 'http:'.
% (2) An attempt to read from a URL that is accessible, but very slow,
% might take an unacceptably long time to complete. In some cases,
% it may be necessary to have the operating system terminate MATLAB.
% Key words from such URLs can be added to the skip list in surfer.m.


% Initialize
U = cell(n,1);
hash = zeros(n,1);
L = logical(sparse(n,n));
m = 1;
U{m} = root;
hash(m) = hashfun(root);


j = 1;
while j <>
% Try to open a page.
try set(t1,'string',sprintf('%5d %s',j,U{j})) set(t2,'string','');
drawnow page = urlread(U{j});
catch set(t1,'string',sprintf('fail: %5d %s',j,U{j})) drawnow j = j+1;
continue end if get(slow,'value') pause(.25) end
% Follow the links from the open page.
for f = findstr('http:',page);
% A link starts with 'http:' and ends with the next quote.
e = min([findstr('"',page(f:end)) findstr('''',page(f:end))]);
if isempty(e), continue, end url = deblank(page(f:f+e-2)); url(url<' ') = '!';
% Nonprintable characters if url(end) == '/', url(end) = [];
end
% Look for links that should be skipped.
skips = {'.gif','.jpg','.jpeg','.pdf','.css','.asp','.mwc','.ram', ... '.cgi','lmscadsi','cybernet','w3.org','google','yahoo', ... 'scripts','netscape','shockwave','webex','fansonly'};
skip = any(url=='!') any(url=='?');
k = 0;
while ~skip & (k < k =" k+1;">
skip = ~isempty(findstr(url,skips{k}));
end if skip if isempty(findstr(url,'.gif')) & isempty(findstr(url,'.jpg'))
set(t2,'string',sprintf('skip: %s',url)) drawnow if get(slow,'value') pause(.25)
end
end continue end
% Check if page is already in url list.
i = 0; for k = find(hash(1:m) == hashfun(url))';
if isequal(U{k},url) i = k; break
end
end
% Add a new url to the graph there if are fewer than n.
if (i == 0) & (m < m =" m+1;">
hash(m) = hashfun(url); i = m;
end %
Add a new link. if i > 0
L(i,j) = 1;
set(t2,'string',sprintf('%5d %s',i,url))
line(j,i,'marker','.','markersize',6)
drawnow
if get(slow,'value')
pause(.25)
end
end
end
j = j+1;
end
delete(t1)
delete(t2)
delete(slow)
set(quit,'string','close','callback','close(gcf)','value',0)
%------------------------
function h = hashfun(url)
% Almost unique numeric hash code for pages already visited.
h = length(url) + 1024*sum(url);


Como al bot también le dicen "spider", acá te pongo una araña para que persiga a tu mouse :)

viernes, 28 de marzo de 2008

Acerca de ZoomInfo

Por recomendación de Rohit me suscribí a ZoomInfo, un "Search Engine focalizado en business information" que incluye data de 35 millones de personas y 3,5 millones de empresas. Rohit lo llama "un people finding site".

Con terrible base de datos de gente, al Google bot parece gustarle ZoomInfo cuando lo que se buscan son personas. Si la persona buscada no está registrada, ZoomInfo genera una página con información que encuentra en internet. En caso contrario, te manda a la página que la persona buscada generó (con info similar a la de LinkedIn).

Pero lo realmente distintivo de ZoomInfo es que para verificar tu identidad, te pide que cargues los datos de la tarjeta de crédito (obviamente no se realiza ningún gasto, sólo le interesan los datos). Guau. Dudé mil veces antes de poner los datos de la tarjeta sin que sea para comprarme algo, para lo cual siempre uso sitios conocidos o sino PayPal. Pero ZoomInfo tiene buena reputación y no va a haber problema.

Eso explica porque al Google bot le gusta esa base de datos: los registrados tienen identidad verificada!! Como era de esperar, mi perfil tiene un link para acá. Parece ser una buena mejora.
Veremos...

Blogocosa.com

viernes, 22 de febrero de 2008

Segundos por segunda vez

Después de varias semanas de rondar el cuarto o quinto puesto, al bot que pasó el 20 de febrero le gustó el site y hoy cuando puse Daniel Serra en el buscador, me devolvió un hermoso puesto número dos.

La página ganadora quedará inmortalizada en el permalink del caché de Google.

Y también en esta foto:


By the way, de salir primeros, ni noticias. Ni siquiera por un ratito. Seguiremos remando.


Blogocosa.com

jueves, 14 de febrero de 2008

Desde el ojo del bot

Daniel-SerraEste es otro tip del libro (ahora que estoy de vacaciones, hay tiempo para leer). Una herramienta de SEO muy interesante son los Spider Emulators, que sirven para ver el site desde la mirada del bot. Uno que recomiendan es este.
Una vez en esa página, tipear la url de tu site, click en Analyze y aparece la Spider Test Result Page.

En la página de resultados, hay que hacerse unas preguntas:
- ¿Están las keywords presentes? (en mi caso, por ahora, Daniel Serra y Dani Serra, después voy a ir sumando más). A esto se lo llama "keyword density" (# keywords/# palabras totales). La página muestra una tabla con la densidad de 210 palabras que aparecen en la home. Veo que Serra aparece 36 veces (2da palabra después de "que", nada mal), con una densidad de 5.5, y Daniel aparece 21 veces con una densidad de 3.21.
- Tengo 246 links salientes (son muchos, Google recomienda máximo 100), pero la mayoría van a direcciones que tienen las keywords. Lo que puedo hacer es disminuir la cantidad de posts que estoy mostrando, por ejemplo de seis a cuatro, y así bajar la cantidad de links.
- ¿Se lee el blog en el orden en que yo quiero que se lea? NO!! El bot lee primero la columna de posts y después la columna de la derecha. Esa columna tiene una densidad muy alta de keywords, con lo cual sería bueno correrla para la izquierda así el bot la lee primero. Eso implica cambiar el template standard de blogger, que puede ser una pesadilla para mí ahora, pero hay que tenerlo en cuenta para el futuro.
- ¿Se ven buenas ALT tags en las imágenes, o palabras inservibles como ImgFile01? Desde que abrí la cuenta en photobucket, mis ALT tags son buenas.

Luego, repetir para cada página importante del site (en mi caso, las que salen primeras en el search de Daniel Serra, y las del must read).
Luego, repetir para la competencia, en mi caso, el profesor.



Blogocosa.com

lunes, 14 de enero de 2008

Me faltaba Flickr.

Para terminar de conectar mis sitios personales entre sí, agregué Flickr al box de "About Me". No esperen grandes fotos ahí, sólo me interesaba el incoming link que apuntaba para acá. Tampoco es que sea un link de mucha potencia, pero todo suma.

La principal razón por la cual incluí a Flickr es que ví que en los Results Pages de Google, siempre rankea bien un sitio que se llama Pipl.com que es un Search Engine pero de gente, en el cual, por supuesto, tampoco aparezco. Pipl rastrea la web con un deep bot que, según ellos mismos dicen, tiene mucha más cobertura que los deep bots de los buscadores tradicionales. Van especialmente a los sites de Social Networking en busca de datos aislados de personas, que luego juntan en una página. Si ponés Daniel Serra te sale un dato del profesor, junto con otro dato del nadador, y otro dato del director, todo mezclado. Pipl describe como su ventaja competitiva el hecho de que Google y Yahoo no son buenos para buscar gente, y quizás justamente por eso, el Googlebot le da a Pipl una ponderación especial, para cubrir una debilidad propia. Todo esto es imaginación mía.

La cosa es que Pipl destaca once páginas con deep web content que ellos usan, una de las cuales es Flickr (otras son Friendster, My Space, etc). No figura ni Blogger, ni Facebook, ni Twitter, ni LinkedIn que son las que uso yo. Entonces incluí a Flickr con la intención de que eso mejore mi presencia en Pipl, therefore en Google.

Ahora tengo conectados entre sí a los cinco sites personales que yo uso. Espero que algo se sumen los unos a los otros:
Desde este blog se puede ir a los otros cuatro, con los links del About Me.
Desde Facebook también, pero para eso tenés que estar en mi red de amigos.
Desde LinkedIn sólo podés venir acá.
Desde Twitter podés venir acá e ir a LinkedIn.
Y desde Flickr podés venir acá, ir a Twitter o a LinkedIn.

El site que uso mucho pero todavía no conecté es mi página de del.icio.us (estoy con un seudónimo). Por alguna razón extraña, esa página me parece tan privada como la de MyYahoo, y no quise abrirla. Por ahora.

Add to Technorati Favorites

lunes, 7 de enero de 2008

"Robot, no sigas a este link!"

Tanto Google como todos los otros Search Engines modernos, tienen programas que recorren la web de manera automática y programada. Esos programas (que se llaman bots, robots, crawlers o spiders) entran a cada página y la copian para que luego sea procesada por otro soft que la "indexa", o sea, analiza su estructura, sus links entrantes y sus links salientes.

Google tiene dos bots, uno que se llama deepbot que recorre toda la web, siguiendo cada link, tarea que le lleva aproximadamente un mes; y otro que se llama freshbot que sólo busca contenido nuevo.

Cuando el Googlebot entra a una página, existe el riesgo de que siguiendo a alguno de los links salientes que están en esa página, el bot se vaya antes de hacer una copia completa. Eso dejaría parte de la página sin indexar, que es lo mismo que decir que esa parte no existe para el buscador. Para evitar eso, lo que hay que hacer es incorporar en el código una indicación que le diga al bot que "no se vaya por ese link". Esa indicación se llama "no follow".

La optimización de hoy fue simplemente incorporar el tag rel='nofollow' en el código de los widgets con links externos que tengo en la barra de la derecha: el About Me y el de los feeds (al botón de Blogger no se lo pongo ya que me dan el servicio de Blogging gratis y funciona muy bien).

En este blog los Comments, Backlinks y links a otros blogs citados NO TIENEN NO FOLLOW. Ver la política acá.

En el siguiente post, una nota complementaria a lo que ya escribí de Trackbacks: el Backlist.