6

Estoy trabajando en un proyecto y necesito hacer muchos ajustes de pantalla para obtener una gran cantidad de datos lo más rápido posible. Me pregunto si alguien sabe de alguna buena API o recursos para ayudarme.Raspado web, raspado de pantalla, sugerencias de minería de datos?

Estoy usando Java, por cierto.

Esto es lo que mi flujo de trabajo ha sido hasta ahora:

  1. Conectar con una página web (usando HTTPComponents de Apache)
  2. sitio web contiene una sección con un montón de enlaces que necesito para visitar (utilizando una función de analizadores HTML java para averiguar cuáles son todos los enlaces que necesito visitar, este es un código molesto y desordenado)
  3. Visita todos los enlaces que encontré
  4. Por cada enlace que visito, hay más información que necesito para extracto, distribuido en varias páginas, así que puedo necesitar visi t más enlaces

Pensamientos:

  • ¿Alguien sabe de cualquier nivel superior/analizadores html más inteligente que el construido en uno de java?
  • Básicamente se trata de una primera búsqueda en profundidad. Me imagino que me gustaría hacer esto multiproceso en algún momento para poder visitar algunos de estos enlaces en paralelo.
  • Tal vez lo que realmente estoy buscando es una web multihilo arrastrándose biblioteca

Si no se han dado cuenta, esta es la primera vez que jugar un poco con esto, así que estoy teniendo un momento difícil tratando de articular exactamente cuáles son mis necesidades Agradecería mucho cualquier aporte que cualquiera de ustedes que haya hecho antes pueda tener.

+0

¿Qué analizador de Java estás usando ahora? (Sin relación: el marco de Java Executor es ideal para el paralelismo controlado) – user486972

+0

http://stackoverflow.com/questions/7138296/how-do-i-get-the-source-of-a-given-url-from-a- servlet/7138434 # 7138434 Encontré esto. Pensé que estarías interesado. – Srinivas

+0

Eche un vistazo a http://teusje.wordpress.com/tag/scrape/ que contiene información sobre cómo raspar datos con powershell y perl. – juFo

Respuesta

9

He encontrado JSoup realmente bueno para el análisis de HTML.

Para más punteros comprobar este artículo Salida: How to write a multi-threaded webcrawler

+0

En realidad, me encontré con ese enlace. Me pregunto si hay algún buen combinador webcrawler + parser. Aunque quizás pueda usarlos a ambos juntos. – JPC

+0

Encontré esta publicación buscando herramientas de raspado HTML de Java y JSoup es realmente bueno. –

1

Probar usando el proyecto Web-Harvest.

+0

Lo comprobaré, gracias – JPC

0

Pedido JSR-237 para la gestión del trabajo, que es una idea genial cuando se va multiproceso.

En cuanto a raspado, existen varias alternativas. Si la facilidad de uso es más importante, te aconsejo que uses HTMLUnit. Más allá de eso, debe rodar su propio

2

Usé Bixo para extraer los hipervínculos y las imágenes que realizan la búsqueda de profundidad. Construyó sobre hadoop y en cascada por lo que hay una curva de aprendizaje, pero el ejemplo proporcionado es lo suficientemente bueno para configurar los cambios ...

Cuestiones relacionadas