【发布时间】:2021-09-21 07:20:58
【问题描述】:
我正在尝试从网页中抓取评论。附图显示评论位于名为“more reviewdata”的 div 类下的 <p> 标签中。 我先使用 BeautifulSoup,然后使用 Selenium 提取“更多评论数据”部分,但失败了,尽管其他 <p> 和 <div> 标签提取得很好。我访问的几个教程网站之一暗示动态页面不会通过单击检查来显示所有来源。但是这里点击Inspect后显示的是review内容,这意味着这个页面不是动态的。有没有人建议。提前致谢。对于 BeautifulSoup,我的代码是这样的:
import requests
url = 'https://www.mouthshut.com/hindi-movies/Tanhaji-reviews-925997893'
response = requests.get(url)
page_contents = response.text
from bs4 import BeautifulSoup
doc = BeautifulSoup(page_contents, 'html.parser')
对于我写的 Selenium 和 Chrome 驱动程序:
from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_argument('--ignore-certificate-errors')
options.add_argument('--incognito')
options.add_argument('--headless')
driver = webdriver.Chrome("/usr/lib/chromium-browser/chromedriver", options=options)
import time
driver.get("https://www.mouthshut.com/hindi-movies/Tanhaji-reviews-925997893")
more_review_data_class = driver.find_elements_by_class_name("more reviewdata")
page_contents = driver.page_source
【问题讨论】:
-
尝试类名more.reviewdata(注意中间的点)
标签: python selenium web-scraping beautifulsoup