我需要抓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”})))
答案 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。