我是Python的初学者,对web废弃完全陌生。 目前,我正试图将此网页用于教育目的:https://www.cdiscount.com/maison/achat-meuble-literie/dormipur-matelas-140x190-memoire-de-forme-16-c/f-11755-v920t140190.html#rating
我真正想要的是检索多个页面的每个评论。当我点击“précédent/suivant”(法语中的“previous/next”)时,URL不会改变,我不知道该怎么做。你知道吗
请参见链接上的图像:
我发现这个解释可以解决同样的问题:How to scrape multiple pages with an unchanging URL - Python 3
我按照@Keyur Potdar给出的步骤进行了操作,但是我无法用下面的代码检索第二页的文本。它只给了我第一页的内容:
import requests
from bs4 import BeautifulSoup
desc = {'productId': 'v920t140190',
'siteMapNodeId': 389,
'CurrentPage': 2,
'StarValueList':'',
'ReviewOrdering': 2,
}
r = requests.get('https://www.cdiscount.com/maison/achat-meuble-literie/dormipur-matelas-140x190-memoire-de-forme-16-c/f-11755-v920t140190.html#rating',params=desc)
soup = BeautifulSoup(r.text, 'html.parser')
tabinfos = []
for a in soup.find_all('p'):
tabinfos.append(a)
for i in range(0,len(tabinfos)):
print('Text :')
print(tabinfos[i].text)
页面注释数据通过ajax请求填充。您可以使用请求来模拟相同的请求并获取数据。您可以使用inspect工具中的network选项卡来查找正在发出的ajax请求。你知道吗
你得到的数据是html本身,所以你不必做任何额外的工作。您可以使用循环中使用的相同脚本,但要使用新的ajaxurl。你知道吗
输出:
另一种选择是使用selenium模拟单击“下一步”。你知道吗
相关问题 更多 >
编程相关推荐