Toutes les collections
FAQ
Pourquoi Octoparse saute-t-il des pages pendant le scrape ?
Pourquoi Octoparse saute-t-il des pages pendant le scrape ?

Ce tutoriel va vous expliquer pourquoi Octoparse saute certaines pages lors de l'extraction d'un site Web.

Mis à jour il y a plus d’une semaine

De nombreux utilisateurs ont rencontré des cas où Octoparse saute certaines pages lors de l'extraction d'un site Web et, en conséquence, ils obtiennent moins de données. Par exemple, après avoir scrapé avec succès les deux premières pages, il saute directement à la page 5, puis peut-être à la page 10, mais ne va pas aux pages dans un ordre logique.

Cela est dû au fait que le XPath généré automatiquement par la boucle de pagination ne trouve pas toujours le bouton "page suivante" sur chaque page.

Regardez l'exemple web scraping suivant : Exemple d'URL

  • Sur la première page, vous pouvez voir que le XPath de la boucle de pagination localise parfaitement le bouton de la page suivante.

  • Cependant, sur la deuxième page, le XPath localise la page 10.

Ainsi, après avoir fini de gratter la deuxième page, Octoparse ira directement à la page 10, manquant beaucoup de données sur les pages intermédiaires.

Comment résoudre ce problème de saut de page ?

Il est facile de résoudre un tel problème : il suffit de modifier le XPath pour s'assurer qu'il localisera toujours le bouton "Suivant".

1. Inspecter le bouton suivant dans un navigateur ordinaire pour vérifier le code source

La balise A comporte un attribut title. Nous pouvons utiliser cet attribut pour écrire le XPath : //a[@title='Next'] (Vérifiez comment écrire un XPath

ici )

2. Entrez le XPath dans Octoparse pour vérifier s'il peut toujours localiser le bouton suivant.

Conseil : Après avoir créé une boucle de pagination dans une tâche, il est préférable de cliquer manuellement sur l'action Pagination et Click pour paginer afin d'aller sur plusieurs pages, comme le montre ce tutoriel, afin de vérifier si le XPath généré automatiquement peut localiser précisément le bouton suivant.


Avez-vous trouvé la réponse à votre question ?