La paginación es una técnica ampliamente utilizada en el diseño web que divide el contenido en varias páginas, presentando grandes conjuntos de datos de una manera mucho más fácil de digerir para los internautas.
Hay muchos métodos de paginación empleados por diferentes desarrolladores web, como la paginación numerada, el desplazamiento infinito, etc. Aunque generalmente se cree que la paginación mejora la experiencia del usuario, la mala noticia es que dificulta el web scraping.
Si está tratando de scrape datos de un sitio web y enfrenta un dilema sobre cómo abordar la paginación para el web scraping, lo tenemos cubierto. Octoparse, una herramienta automática de web scraping, admite el manejo de sitios web de varias estructuras de paginación. Ahora vamos a ilustrar los diversos enfoques sobre cómo lidiar con diferentes tipos de paginación con Octoparse, que incluye:
1. Paginación con next botón
Hacer clic en el botón ”Siguiente" para paginar es quizás uno de los métodos más utilizados para la paginación, lo que facilita a los visitantes navegar por las páginas del sitio web. Es muy sencillo manejar este tipo de paginación para el web scraping en Octoparse.
No importa si se trata de un botón siguiente que se muestra en la forma de la palabra - "Next" o simplemente una flecha hacia la derecha - ">", solo necesita crear un "bucle de paginación” para continuar haciendo clic en la página del botón después de scrape el objeto actual. (Mira un ejemplo aquí)
2. Número de página sin botón "Siguiente"
El enfoque para este tipo particular de paginación es muy similar al del botón siguiente. Desea crear un ciclo de paginación para seguir haciendo clic en el siguiente número de página en la línea. Sin embargo, dado que no hará clic en un elemento estático, localizar el siguiente número de página con precisión es fundamental.
Octoparse usa XPath (Lenguaje de XML Path, que usa la sintaxis "path like" para identificar y navegar por los nodos en un documento XML) para localizar cualquier elemento. Entonces, el punto clave aquí es modificar la XPath del "buclo de paginación” para asegurarse de que siempre localizará el siguiente número de página tan pronto como la página actual se haya eliminado por completo (consulte este tutorial para saber cómo modificar la XPath para ubicar con precisión la siguiente página número)
3. Desplazamiento infinito
Infinite-scrolling, also know as "endless scrolling" is a technique used most often by websites with JavaScript or AJAX to load additional content dynamically as users scroll down to the bottom of the webpage. Instead of using "previous/next" pagination buttons, many websites are turning to infinite scrolling, saving people from having to click through the many pages. Infinitive scrolling is typically used by websites with a large amount of data to display such as social media platforms like Facebook and Twitter.
El desplazamiento infinito, también conocido como "endless scrolling", es una técnica utilizada con mayor frecuencia por los sitios web con JavaScript o AJAX para cargar contenido adicional de forma dinámica a medida que los usuarios se desplazan hacia la parte inferior de la página web. En lugar de utilizar los botones de paginación "anterior/siguiente", muchos sitios web están recurriendo al "desplazamiento infinito", evitando que las personas tengan que hacer clic en las muchas páginas. El desplazamiento infinitivo generalmente es utilizado por sitios web con una gran cantidad de datos para mostrar, como plataformas de redes sociales como Facebook y Twitter.
Octoparse se ocupa del infinitive scrolling imitando el comportamiento del desplazamiento. Dependiendo de la cantidad de contenido que desee cargar, simplemente configure el tiempo de desplazamiento y la forma de desplazamiento adecuados, la página se desplazará automáticamente (consulte un ejemplo aquí )
4. "Load More" Botón
Cargar más botones de navegación es otra alternativa popular al desplazamiento infinito. En este caso, tendría un botón específico, como "Cargar más", para activar la carga de contenido con AJAX cuando llegue al final de la página.
Octoparse trata con el botón "Cargar más" con un ciclo de paginación, que es lo mismo que tratamos con el botón "Siguiente", haciendo clic en un solo botón repetidamente. Sin embargo, la diferencia es que con el botón "Cargar más", debemos ejecutar el ciclo de paginación hasta que desaparezca el botón de carga antes de continuar con el siguiente paso. Después de cargar todo el contenido deseado, el proceso de scraping es tan fácil como scrape una sola página (verifique más detalles aquí)
Conclusion
Pagination reduces page complexity and improves the readability of web content, yet it needs to be tackled using various approaches, whichever that creates maximum efficiency. If we fail to deal with pagination properly, it will result in missing data and a waste of time. Making good use of a web scraping tool like Octoparse, you can avoid the complexities of web scraping!
Previously published at https://www.octoparse.es/blog/abordar-la-paginacion-para-web-scraping