首页 > 解决方案 > Python:使用 Selenium 和 ChromeDriver 进行远程调试

问题描述

版本

Windows (10)、Chrome-(89.0.4389.128)、ChromeDriver-(89.0.4389.23)、Selenium-(3.141.0)

问题

我目前对 ChromeDriver/Selenium 的远程调试器选项有一些问题。我可以使用以下方法打开一个新的 Chrome 页面并导航到我想要的任何位置:

C:\Users\test>chrome.exe --remote-debugging-port=9222 --user-data-dir="C:\temp\test"

但是,当我尝试运行下面的代码时,在我退出页面并获得以下信息之前什么都没有发生:

' SessionNotCreatedException: 无法从渲染器接收消息'。

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

chrome_options = Options()
chrome_options.add_experimental_option("debuggerAddress", "127.0.0.1:9222")

driver_path = 'D:\Anything\chromedriver.exe'
driver = webdriver.Chrome(driver_path, options=chrome_options)

print(driver.title)

任何建议将不胜感激。如果我遗漏了任何重要信息,我很乐意回答。

附带问题:是否需要启用 Chrome 开发人员工具才能使用远程调试?

谢谢!

标签: pythonseleniumselenium-chromedriverremote-debugging

解决方案


它应该是:

chrome_options.add_argument('remote-debugging-port=9222')

您可能还需要将路径中的反斜杠转义为:D:\\Anything\\chromedriver.exe

经测试可与 Chrome>=90 一起使用。


推荐阅读