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

使用Python和Selenium抓取Chrome控制台日志无返回问题求助

解决Selenium无法获取console.log输出的问题

问题出在你没有配置Selenium捕获浏览器日志的权限,默认情况下ChromeDriver不会收集console的日志输出。你需要在初始化Chrome浏览器时,显式设置日志偏好,指定要捕获browser类型的日志。

修正后的代码

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

# 配置Chrome选项,设置日志偏好
chrome_options = Options()
# 指定捕获所有级别的浏览器日志
chrome_options.set_capability('goog:loggingPrefs', {'browser': 'ALL'})

# 初始化driver时传入配置
driver = webdriver.Chrome(options=chrome_options)

# 加载目标页面
driver.get('http://example.com')

# 执行控制台命令
driver.execute_script("console.log('hello world')")

# 获取并打印浏览器日志
for entry in driver.get_log('browser'):
    print(entry)

# 关闭driver释放资源
driver.quit()

关键说明

  • goog:loggingPrefs是Selenium 4.x及以上版本适配W3C规范的参数,旧版本可直接使用loggingPrefs(去掉goog:前缀)。
  • 日志级别可选值包括ALL、DEBUG、INFO、WARNING、SEVERE,设置为ALL会捕获所有类型的浏览器日志。
  • 如果依然无法获取日志,请检查ChromeDriver和Chrome浏览器的版本是否匹配,版本不兼容可能导致日志捕获失效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 10:30:50