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

Selenium WebDriver:无需API在YouTube标记/删除垃圾评论

解决YouTube评论三点菜单需悬停才显示的问题

要触发评论的三点更多菜单,核心是模拟鼠标悬停到评论区域,让隐藏的菜单按钮显示出来,再执行点击操作。以下是修改后的代码及关键步骤:

关键修改点

  • 使用ActionChains模拟鼠标悬停,触发菜单显示
  • 调整元素定位逻辑,确保先定位评论容器,再找到对应的三点按钮
  • 增加等待逻辑,确保元素加载完成后再操作

修改后的完整代码

from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import pathlib

URL = "https://www.youtube.com/watch?v=dvecqwfU6xw&lc=Ugxw_nsUNUor9AUEBGp4AaABAg.9fDfvkgiqtW9fDkE2r6Blm"

options = webdriver.ChromeOptions()
user = pathlib.Path().home()
options.add_argument(f"user-data-dir={user}/AppData/Local/Google/Chrome/User Data/")

driver = webdriver.Chrome('chromedriver.exe', options=options)
driver.get(URL)
wait = WebDriverWait(driver, 100)

# 先滚动加载评论区域
while True:
    driver.execute_script("window.scrollBy(0, 200);")
    try:
        # 等待评论区域加载完成
        wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, "#comments")))
        break
    except:
        pass

# 定位第一条评论的容器(如果要处理多条,需要遍历所有评论容器)
comment_container = wait.until(EC.presence_of_element_located((By.CSS_SELECTOR, "#contents ytd-comment-thread-renderer")))

# 模拟鼠标悬停到评论容器上,触发三点菜单显示
ActionChains(driver).move_to_element(comment_container).perform()

# 等待三点菜单按钮出现并可点击
three_dot_button = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, "#more-button")))
three_dot_button.click()

# 后续可以定位举报选项,比如:
# report_option = wait.until(EC.element_to_be_clickable((By.XPATH, "//yt-formatted-string[text()='举报']")))
# report_option.click()

注意事项

  • 如果要处理多条评论,需要遍历所有ytd-comment-thread-renderer元素,对每个元素重复悬停+点击操作
  • YouTube的页面元素可能会更新,若定位失败,需要用浏览器开发者工具重新获取最新的CSS选择器或XPATH
  • 操作时不要过快,避免触发YouTube的反爬机制,可适当增加time.sleep()或使用显式等待

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 07:11:04