En bref : Scrapy Splash associe le moteur de crawling rapide de Scrapy au navigateur sans interface graphique Splash pour afficher les pages riches en JavaScript. Ce tutoriel sur Scrapy Splash vous guide à travers la mise en place de Docker, la configuration du projet Scrapy, les bases de SplashRequest, les scripts Lua pour le défilement et les clics, l'intégration d'un proxy, ainsi que la résolution des erreurs les plus courantes que vous rencontrerez.
Scrapy est l'un des frameworks de crawling web les plus efficaces de l'écosystème Python, mais il présente un point faible bien connu : il ne peut pas exécuter de JavaScript. Tout site qui charge des données via un rendu côté client, des appels AJAX ou des frameworks d'applications monopages est invisible pour un spider Scrapy standard. C'est exactement le problème que résout ce tutoriel sur Scrapy Splash.
Scrapy Splash est une couche d'intégration entre Scrapy et le navigateur headless Splash. Splash est un service de rendu léger basé sur Qt, développé par Zyte (la même équipe à l'origine de Scrapy), qui expose une API HTTP. Au lieu d'exécuter un navigateur de bureau complet, Splash charge une page dans un moteur WebKit allégé, exécute le JavaScript et renvoie le code HTML entièrement rendu à votre spider. Vos méthodes de parsing continuent de fonctionner avec les sélecteurs CSS et XPath standard, comme si de rien n’était.
Dans ce guide, vous allez installer Docker et Splash à partir de zéro, configurer votre projet Scrapy, écrire des robots qui affichent des pages dynamiques, créer des scripts Lua pour des interactions avancées, configurer des proxys et résoudre les erreurs qui posent le plus de problèmes aux débutants.




