You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

烂番茄全量观众影评抓取:解决加载崩溃及排序需求问题

烂番茄观众影评抓取优化方案

一、直接通过URL调整影评排序规则

烂番茄支持通过URL参数指定影评排序方式,在原链接末尾添加&sort=oldest即可按时间正序显示最早发布的影评。
示例链接:https://www.rottentomatoes.com/m/inception/reviews?type=user&intcmp=rt-scorecard_audience-score-reviews&sort=oldest
对应的,sort=latest是默认的逆时间排序,可按需切换。

二、优化Selenium加载方案(避免多次点击崩溃)

如果仍需使用Selenium,可通过以下方式降低页面负载、避免崩溃:

  • 添加智能等待逻辑:不要盲目循环点击LOAD MORE,使用WebDriverWait等待按钮可点击状态,同时验证新一批影评加载完成(比如检查影评数量是否增加),示例代码片段:
    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.support import expected_conditions as EC
    from selenium.webdriver.common.by import By
    
    wait = WebDriverWait(driver, 10)
    click_count = 0
    while True:
        try:
            load_more_btn = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, 'button[data-qa="load-more-btn"]')))
            current_review_count = len(driver.find_elements(By.CSS_SELECTOR, 'div[data-qa="user-review"]'))
            load_more_btn.click()
            # 等待新影评加载完成
            wait.until(lambda d: len(d.find_elements(By.CSS_SELECTOR, 'div[data-qa="user-review"]')) > current_review_count)
            click_count += 1
        except:
            # 无更多按钮时退出循环
            break
    
  • 启用无头浏览器模式:关闭UI渲染以节省资源,以Chrome为例:
    from selenium.webdriver.chrome.options import Options
    
    chrome_options = Options()
    chrome_options.add_argument("--headless=new")
    driver = webdriver.Chrome(options=chrome_options)
    
  • 定期清理页面缓存:每隔若干次点击后,执行JS清理内存:
    if click_count % 10 == 0:
        driver.execute_script("window.localStorage.clear();")
        driver.execute_script("window.sessionStorage.clear();")
    

三、更高效的方案:直接调用影评API

通过浏览器开发者工具抓包,可找到烂番茄加载用户影评的异步API接口,直接发送HTTP请求获取数据,无需加载完整页面:

  • 接口格式大致为:https://www.rottentomatoes.com/napi/movie/{movie_slug}/reviews/user
  • 核心请求参数:
    • page:分页页码(从0开始)
    • pageSize:每页条数(可设置大于20,比如50或100,减少请求次数)
    • sort:排序方式,oldest为正序,latest为逆序
  • 请求时需带上浏览器的User-Agent、Referer等请求头,避免被反爬拦截。

内容的提问来源于stack exchange,提问作者AAbilio

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 02:02:54