¿Es posible encontrar todas las páginas y enlaces en CUALQUIER sitio web? Me gustaría ingresar una URL y producir un árbol de directorio de todos los enlaces de ese sitio.
He mirado HTTrack pero eso descarga todo el sitio y simplemente necesito el árbol de directorios.
directory
web-crawler
Jonathan Lyon
fuente
fuente
Respuestas:
Echa un vistazo a linkchecker: rastreará el sitio (mientras obedece
robots.txt
) y generará un informe. Desde allí, puede crear un script para una solución para crear el árbol de directorios.fuente
robots.txt
archivo, eso solo significa que puede gatear hasta el contenido de su corazón.Si tiene la consola de desarrollador (JavaScript) en su navegador, puede escribir este código en:
Acortado:
fuente
$$
operador? ¿O es solo un nombre de función arbitrario, al igualn=ABC(''a');
que no entiendo cómo seurls
obtienen todos los elementos etiquetados con 'a'. ¿Puedes explicar? Supongo que no es jQuery. ¿De qué función de biblioteca de prototipos estamos hablando?$$()
es básicamente una abreviatura dedocument.querySelectorAll()
. Más información en este enlace: developer.mozilla.org/en-US/docs/Web/API/Document/…Otra alternativa podría ser
Con tu
$$(
es aún más cortofuente
Si esta es una pregunta de programación, le sugiero que escriba su propia expresión regular para analizar todo el contenido recuperado. Las etiquetas de destino son IMG y A para HTML estándar. Para JAVA,
esto, junto con las clases Pattern y Matcher, debería detectar el comienzo de las etiquetas. Agregue la etiqueta LINK si también desea CSS.
Sin embargo, no es tan fácil como podría haber pensado inicialmente. Muchas páginas web no están bien formadas. Extraer programáticamente todos los enlaces que el ser humano puede "reconocer" es realmente difícil si necesitas tener en cuenta todas las expresiones irregulares.
¡Buena suerte!
fuente
prueba este código ...
fuente