我正在使用 Selenium 来抓取客户评论和其他感兴趣的数据(给出的星星数量、评论日期、有多少人认为它有用等)
除了一些评论很长并且有一个“查看更多”按钮可以显示更多文本之外,我一切都正常。我似乎无法捕捉这段文字。我正在使用 driver.find_elements_by_xpath
以下是第一篇文章中带有“查看更多”的网页示例: https://www.consumeraffairs.com/insurance/metlife_disabil.html?page=3
我尝试使用以下几种变体进行抓取:
review_SeeMore = driver.find_elements_by_xpath('(//div[@class="js-collapsed"]/p)')
我认为我不必这样做,但我也尝试使用以下选择器单击按钮:
review_SeeMore = driver.find_elements_by_xpath('(//div[@class="js-expanded"]/p)')
最佳答案
使用get_attribute
提取隐藏内容
from selenium import webdriver
from selenium.webdriver.common.by import By
driver = webdriver.Chrome('chromedriver.exe')
driver.get('https://www.consumeraffairs.com/insurance/metlife_disabil.html?page=3')
review_SeeMore = driver.find_elements_by_xpath('(//div[@class="rvw-bd ca-txt-bd-2"])')
for review in review_SeeMore:
for paragraph in review.find_elements(By.TAG_NAME, "p"):
print paragraph.get_attribute('textContent').encode("utf-8")
print '\n============================\n'
关于python - 如何单击“查看更多”链接并通过 Selenium 和 Python 抓取内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53162753/