Extraer datos de varias páginas a través de la paginación es un caso muy común ya que la mayoría de las veces necesita más de una página de datos para su proyecto.
Pero es posible que Octoparse a veces siga scrape la última página y nunca se detenga. Esto puede deberse a que el bucle de página sin fin debido al botón "Siguiente" todavía se puede detectar en la última página. Aquí ofrecemos dos soluciones para que arregle este problema: puede configurar la condición "Finalizar ciclo cuando" en "Opciones avanzadas" del elemento de ciclo de paginación, o modificar XPath para evitar un ciclo sin fin.
1. Establecer condición final de bucle - "Finalizar bucle cuando"
La opción "Finalizar bucle cuando" le permite detener la paginación en páginas específicas. Cuando configura la condición "Finalizar bucle cuando" para el paso de paginación, el bucle de paginación se detendrá cuando llegue a los tiempos de ejecución configurados.
(por ejemplo, si desea raspar las primeras 50 páginas de datos, puede configurar 49 tiempos de ejecución de ejecución).
Entonces, si conoce los tiempos exactos de los clics de paginación, puede configurar la opción "Finalizar bucle cuando" para resolver el problema perfectamente.
Seleccione el ciclo de paginación primero y luego abra el menú desplegable "Finalizar ciclo cuando". Haga clic en "Tiempo de ejecución alcanzado", elija un número como su tiempo de ejecución de bucle y haga clic en "Aceptar" para guardar su configuración.
2. Modificar XPath
Si el problema no puede resolverse configurando la condición de finalización del bucle, es posible que deba modificar la XPath del bucle de paginación.
Aquí usamos un ejemplo para mostrarle cómo finalizar el buclo mediante la modificación XPath.
En las dos capturas de pantalla a continuación, puede ver que el botón "Siguiente" se encuentra en un XPath generado automáticamente por el complemento Firebug en la primera página y la última página.
(Le sugerimos que use el complemento firebug en el navegador Firefox, Firebug ahora solo está disponible para versiones anteriores de Firebox (por ejemplo, la Versión 54), click here para obtener las versiones anteriores de Firebox).
En la primera pagina:
En la ultima pagina:
El atributo "clase" debajo de la etiqueta "a" en la primera página es diferente de la última página. Uno es "gspr next", mientras que otro es "gspr next-d".
Ahora haremos uso de esta función para escribir un nuevo XPath para ubicar el botón "Siguiente" para asegurarnos de que el botón "Siguiente" no esté disponible en la última página.
Entonces, el nuevo XPath debería ser //a[@ class='gspr next'].
Simplemente pegue el nuevo XPath en Firebug para verificar si puede ubicar el botón "Siguiente" tanto en la primera página como en la última.
En la primera pagina:
En la ultima pagina:
Si desea obtener más información sobre la modificación de XPath, consulte nuestro tutorial de XPath:
Comentarios
0 comentarios
Inicie sesión para dejar un comentario.