Llevo mas de 15 anos destripando codigo y te aseguro que dominar las funciones xpath seo te cambia la vida. Olvidate de revisar el codigo fuente a mano o depender exclusivamente de las opciones por defecto de los crawlers. Cuando audito sitios grandes, lo que mejor me ha funcionado es combinar comandos basicos con funciones avanzadas para extraer datos de forma quirurgica. Por ejemplo, uso la funcion count para saber exactamente cuantas imagenes o enlaces internos tiene una URL, o boolean para que el sistema me devuelva un simple verdadero o falso si existe una etiqueta meta robots especifica.
Auditar atributos de enlaces con contains
En mi experiencia con clientes, el caos con el enlazado saliente es el pan de cada dia. Aqui es donde brilla la funcion contains. En lugar de volverte loco buscando a ojo, puedes pedirle a la herramienta que rastree todos los textos ancla cuyo atributo rel contenga un valor especifico. Combinando esto con operadores logicos le sacas todo el jugo al escrapeo.
Si quiero detectar si nos estan colando enlaces de pago o perdiendo autoridad, lanzo una expresion buscando el atributo rel que contenga la palabra sponsored o nofollow. He visto que aislar estos elementos en segundos te da una ventaja enorme a la hora de limpiar un perfil de enlaces. Tambien puedes crear una expresion que extraiga las URLs y aplicar un operador or para sacar simultaneamente los parrafos de texto asociados a esos enlaces.
Control de protocolos y rutas usando starts-with
Otro dolor de cabeza habitual son las migraciones mal cerradas o las arquitecturas que mezclan URLs absolutas y relativas. Para solucionar esto, starts-with es tu mejor aliado. Le indico a la expresion que busque el atributo href y compruebe si empieza por el protocolo seguro HTTPS. Si el recuento que me devuelve la funcion count no cuadra con el volumen total de paginas, ya se que tenemos un problema de contenido mixto.
¿Y que pasa con los enlaces relativos? Muy facil. Le pido que extraiga los enlaces que empiezan por una barra oblicua. Aunque lo mas rapido es darle la vuelta a la logica usando el operador not. Construyo la expresion para aislar todo lo que no empiece por HTTPS. Asi detecto al instante enlaces internos que tiran de HTTP viejo o que usan anclas con almohadilla para saltar entre bloques de contenido. Es un metodo directo, rapido y que no perdona ni un solo error oculto en el codigo de la web.
Preguntas frecuentes
¿Qué hace la función contains en una expresión XPath?
Permite extraer elementos cuyo atributo incluye una palabra o valor específico. Es muy útil para localizar enlaces que tienen la etiqueta nofollow o sponsored dentro de su código.
¿Cómo detecto enlaces HTTP inseguros usando XPath?
Puedes usar la función starts-with combinada con el operador not. De esta forma la expresión rastreará todos los atributos href que no empiecen por el protocolo seguro HTTPS.
¿Para qué sirve la función count en una auditoría técnica?
Realiza un recuento exacto de las veces que aparece un elemento en el HTML. Te sirve para saber rápidamente cuántos enlaces internos o etiquetas de imagen tiene una página.