豆瓣电影《穿靴子的猫2》影评数据爬取教程:Selenium库实战
使用Selenium库爬取豆瓣电影《穿靴子的猫2》影评数据
本文将使用Python中的Selenium库,抓取豆瓣电影《穿靴子的猫2》的所有页面影评数据。
步骤
-
借助Selenium库,点击进入电影全部影评
-
从'https://movie.douban.com/subject/25868125/comments?start=0&limit=20&status=P&sort=new_score'地址开始,抓取第一页的评论人名称、评论时间以及评论。
代码实现
from selenium import webdriver
import time
# 设置Chrome浏览器无界面模式
options = webdriver.ChromeOptions()
options.add_argument('--headless')
# 打开Chrome浏览器
driver = webdriver.Chrome(options=options)
# 进入《穿靴子的猫2》电影页面
url = 'https://movie.douban.com/subject/25868125/'
driver.get(url)
# 点击进入全部影评页面
btn_all = driver.find_element_by_xpath('//div[@id="comments-section"]/div[2]/a')
btn_all.click()
# 循环抓取影评数据
while True:
# 获取当前页面所有影评元素
comments = driver.find_elements_by_xpath('//div[@id="comments"]/div[@class="comment-item"]')
# 循环处理每个影评元素
for comment in comments:
# 获取评论人名称、评论时间和评论内容
name = comment.find_element_by_xpath('.//span[@class="comment-info"]/a[@class=""]')
time = comment.find_element_by_xpath('.//span[@class="comment-info"]/span[@class="comment-time"]')
content = comment.find_element_by_xpath('.//div[@class="comment"]/p')
print(name.text, time.text, content.text)
# 判断是否有下一页
next_page = driver.find_element_by_xpath('//div[@id="paginator"]/span[@class="next"]/a')
if 'disabled' in next_page.get_attribute('class'):
break
# 点击进入下一页
next_page.click()
# 等待1秒钟,避免访问频率过快
time.sleep(1)
# 关闭浏览器
driver.quit()
运行以上代码,即可抓取《穿靴子的猫2》在豆瓣电影上的所有影评数据。
注意:
- 本代码示例需要安装Selenium库,可以使用
pip install selenium命令进行安装。 - 运行代码前需要在系统中配置好Chrome浏览器驱动程序(ChromeDriver)。
- 爬取数据时请遵守网站的Robots协议,避免过度访问导致网站封锁IP。
原文地址: https://www.cveoy.top/t/topic/oA11 著作权归作者所有。请勿转载和采集!