Selenium爬取豆瓣电影《穿靴子的猫2》影评数据教程

由于错误提示显示ChromeDriver只支持Chrome 100版本,而当前使用的Chrome浏览器版本为96.0.4664.93,因此需要更新Chrome浏览器或下载对应版本的ChromeDriver。

本文将详细介绍使用Selenium库抓取豆瓣电影《穿靴子的猫2》所有页面的影评数据,包括评论人名称、评论时间和评论内容。

1. 准备工作

  • 确保已经安装了Python和Selenium库。
  • 下载与Chrome浏览器版本匹配的ChromeDriver,并将其添加到系统环境变量中。

2. 代码示例

Step 1: 点击进入电影全部影评

from selenium import webdriver

# 打开Chrome浏览器
browser = webdriver.Chrome()

# 打开豆瓣电影《穿靴子的猫2》影评页面
url = 'https://movie.douban.com/subject/25868125/'
browser.get(url)

# 点击'全部影评'按钮进入全部影评页面
all_review_btn = browser.find_element_by_class_name('reviews')
all_review_btn.click()

Step 2: 抓取第一页的评论人名称、评论时间以及评论

from bs4 import BeautifulSoup
import time

# 等待页面加载完成
time.sleep(3)

# 获取第一页评论列表
url = 'https://movie.douban.com/subject/25868125/comments?start=0&limit=20&status=P&sort=new_score'
browser.get(url)

# 解析评论数据
html = browser.page_source
soup = BeautifulSoup(html, 'html.parser')
comment_list = soup.find_all('div', class_='comment-item')

for comment in comment_list:
    # 获取评论人名称
    name = comment.find('span', class_='comment-info').find('a').text.strip()

    # 获取评论时间
    time = comment.find('span', class_='comment-time').text.strip()

    # 获取评论内容
    content = comment.find('span', class_='short').text.strip()

    # 输出评论数据
    print(name, time, content)

3. 抓取全部页面评论数据

以上代码仅抓取了第一页的评论数据,如果需要抓取全部页面的评论数据,可以通过循环实现翻页并抓取数据。

# ... 其他代码 ...

# 翻页并抓取所有页面评论数据
for page in range(1, 100):  # 假设最多100页
    url = f'https://movie.douban.com/subject/25868125/comments?start={page * 20}&limit=20&status=P&sort=new_score'
    browser.get(url)
    # ... 解析评论数据 ...

4. 注意事项

  • 为了避免被网站封禁IP,需要控制访问频率,例如在每次抓取评论数据后,等待一段时间再进行下一步操作。
  • 可以使用代理服务器来隐藏自己的IP地址,降低被封禁的风险。
  • 如果遇到无法抓取数据的情况,可以检查代码是否正确,以及目标网站是否进行了反爬虫措施。

总结

本文介绍了使用Selenium库抓取豆瓣电影《穿靴子的猫2》所有页面的影评数据的方法,并提供了详细的代码示例和注意事项。希望本文能够帮助大家学习使用Selenium库进行网络爬虫。


原文地址: https://www.cveoy.top/t/topic/oBhX 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录