抓取问题(动态内容)(没有selenuim)

时间:2018-02-24 00:19:31

标签: python web-scraping web-crawler

我需要抓http://www.vintagetoday.be/fr/montres但它有动态内容。

我该怎么做?

我的代码

从bs4导入请求导入BeautifulSoup t = requests.get(“vintagetoday.be/fr/catalogue.awp”)。 print(len(BeautifulSoup(t,“lxml”)。findAll(“td”,{“class”:“Lien2”})))

结果是16但是thera是430篇

2 个答案:

答案 0 :(得分:0)

我绝对不是这方面的专家,但我认为这就是你想要的。

docker network connect

有关详细信息,请参阅以下两个链接。

https://pythonspot.com/extract-links-from-webpage-beautifulsoup/

https://pythonprogramminglanguage.com/get-links-from-webpage/

答案 1 :(得分:0)

正常情况下,您只获得了16个链接而不是430个,当第一次加载页面时,它只附带前16个手表(链接),以便获得更多需求向下滚动页面会出现更多手表,为此,您可以使用Selenium。

更好的方法是撤消用于加载监视(paginate)的AJAX调用,并直接在代码中使用此调用。 快速查看显示他们调用以下URL来加载更多监视(POST):

http://www.vintagetoday.be/fr/montres?AWPIDD9BBA1F0=27045E7B002DF1FE7C1BA8D48193FD1E54B2AAEB

我没有看到任何指示分页的参数,这意味着它存储在会话中,他们还会向请求的主体发送一些查询字符串参数,所以你需要检查一下。

返回值似乎是XML格式,可以直接从中获取URL。