我正在处理一个课程项目,并希望加载一些产品的评论。我使用了以下代码(感谢其他堆栈溢出问题)。
加载时的网页抓取数据没有给我完整的数据。
产品链接-
driver.get(url)
content = driver.page_source
soup = BeautifulSoup(content)
data = json.loads(soup.find('script',type = 'application/ld+json').text)
data
下载的汤信息没有给我关于下一个评论按钮的信息,因此我无法点击该按钮。
我尝试了以下方法 - 它工作了一次,但有时会给我一个错误。
if len(driver.find_elements_by_css_selector("button.next-pagination-item.next[disabled]"))>0:
print('done')
else:
button_next=WebDriverWait(driver, 10).until(EC.visibility_of_element_located((By.CSS_SELECTOR, "button.next-pagination-item.next")))
driver.execute_script("arguments[0].click();", button_next)
print("next page")
time.sleep(2)
以上代码显示如下错误-
希望得到任何帮助,或者如果需要任何其他信息,请告诉我。谢谢。
编辑 1 -
根据评论(我有错误的 CSS 选择器),我修改了我的答案。我正在寻找下面给出的班级名称 - 最后一个应该是选择的,因为它说“下一个”
我尝试了下面的一个,但它说找不到,但正如你在上面的图片中看到的那样,它确实存在。此外,汤内容不包含此内容。
driver.find_elements_by_class_name('next-icon next-icon-arrow-right next-icon-medium next-icon-last')
它以不存在的错误作为响应。