Pregunta

Estoy escribiendo un rastreador en Perl, que tiene que extraer contenidos de páginas web que residen en el mismo servidor.Actualmente estoy usando el HTML::Extracto módulo para hacer el trabajo, pero encontré que el módulo era un poco lento, así que miré su código fuente y descubrí que no usa ningún caché de conexión para LWP::Agente de usuario.

Mi último recurso es agarrar HTML::Extracty modificarlo para usar un caché, pero realmente quiero evitarlo si puedo.¿Alguien conoce algún otro módulo que pueda realizar mejor el mismo trabajo?Básicamente sólo necesito tomar todo el texto en el <body> elemento con las etiquetas HTML eliminadas.

Otros consejos

HTML::ExtractLas características se ven. muy básico y poco interesante.Si los módulos que mencionó draegfun no te interesan, puedes hacer todo lo que puedas HTML::Extract hace usando LWP::UserAgent y HTML::TreeBuilder usted mismo, sin requerir mucho código, y luego podrá trabajar en el almacenamiento en caché en sus propios términos.

He estado usando Web :: Scraper para mis necesidades de raspado. De hecho, es muy bueno para extraer datos, y como puede llamar a ->scrape($html, $originating_uri), también es muy fácil almacenar en caché el resultado que necesita.

¿Necesita hacer esto en tiempo real? ¿Cómo te afecta la ineficiencia? ¿Estás haciendo la tarea en serie para que tengas que extraer una página antes de pasar a la siguiente? ¿Por qué quieres evitar un caché?

¿Puede su rastreador descargar las páginas y pasarlas a otra cosa? Quizás su rastreador pueda incluso ejecutarse en paralelo o de manera distribuida.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top