2017-09-12 1 views
0

J'essaye de gratter un site Web. Ceci est une continuation de cela soup.findAll is not working for tableComment puis-je gratter un site avec plusieurs pages en utilisant beautifulsoup et python?

J'ai été en mesure d'obtenir les données nécessaires, mais le site a plusieurs pages qui varient selon le jour. Certains jours, il peut y avoir 20 pages et 33 pages sur un autre. Je suis en train de mettre en œuvre cette solution en obtenant le dernier élément Page How to scrape the next pages in python using Beautifulsoup mais quand je suis arrivé à la div téléavertisseurs sur le site que je veux gratter je trouve ce format

<a class="ctl00_cph1_mnuPager_1" href="javascript:__doPostBack('ctl00$cph1$mnuPager','32')">32</a> 
    <a class="ctl00_cph1_mnuPager_1">33</a> 

comment puis-je gratter toutes les pages le site étant donné que le nombre de pages change tous les jours? par la façon dont l'URL de la page ne change pas avec les changements de page.

+0

Est-il possible de révéler le lien de ce site pour obtenir une réponse rapide probablement avec une solution de contournement? – SIM

Répondre

0
  1. BS4 ne résoudra pas ce problèmes à tout moment, à cause de cela ne peut pas fonctionner Js
  2. D'abord, vous pouvez essayer d'utiliser Scrapy et ce answer
  3. Vous pouvez utiliser Sélénium pour elle
0

Je voudrais apprendre à utiliser Selenium - c'est simple et efficace dans la gestion des situations où BS4 ne fera pas le travail.

Vous pouvez l'utiliser pour vous connecter à des sites, entrer des clés dans des zones de recherche et cliquer sur les boutons à l'écran. Sans oublier, vous pouvez regarder ce qu'il fait avec un navigateur. Je l'utilise même lorsque je fais quelque chose en BS4 pour mieux suivre les progrès d'un projet de grattage.