【发布时间】:2020-06-18 19:10:28
【问题描述】:
我试图在评论卡中提取 p 标签 cmets,最终使用 BeautifulSoup 和 Selenium 通过 link 在 vivino.com 上进行搜索。我能够打开第一个链接,但在评论框中拉出 p 文本会返回 []。
url = "https://www.vivino.com/explore?e=eJwNyTEOgCAQBdHbbA2F5e-8gbE2uKyERBYCaOT20swrJlVYSlFhjaHkPixTHtg34pmVyvzhwutqlO5uyid8bJwf7UeRyqKdMrw0pgYdPwIzGwQ="
driver = webdriver.Chrome('/Users/myname/Downloads/chromedriver')
driver.implicitly_wait(30)
driver.get(url)
python_button = driver.find_element_by_class_name('anchor__anchor--2QZvA')
python_button.click()
soup = BeautifulSoup(driver.page_source, 'lxml')
print(soup.find_all('p'))
table = soup.findAll('div',attrs={"class":"reviewCard__reviewContainer--1kMJM"})
print(table)
driver.quit()
有人可以就拉出 cmets 的正确方法提出建议吗?由于每页有超过 1 条评论,我需要循环播放吗? 我也用'html.parser'而不是'lxml'试过这个。哪个是正确的使用?
非常感谢您的帮助。
【问题讨论】:
-
你用过selenium,不用beautifulsoup,会更慢。
标签: python selenium beautifulsoup