5

我在使用 selenium 启动扩展时遇到了 chrome 的问题。我记录了一个问题 https://code.google.com/p/chromedriver/issues/detail?id=508

对于解决方法,我计划启动 chrome,而不是启用所需的扩展,然后使用 selenium 连接到它。

但我不能这样。任何人都可以帮助解决这个问题,因为 d=webdriver.Chrome() 总是启动一个新的 chrome 实例。我想连接到已经运行的 chrome 实例。

4

3 回答 3

8

**重新连接到 python selenium 中的驱动程序**
这适用于所有驱动程序。
1.打开驱动

    driver = webdriver.Firefox()
  1. 从驱动程序对象中提取到 session_id 和 _url。

    url = driver.command_executor._url       #"http://127.0.0.1:60622/hub"
    session_id = driver.session_id            #'4e167f26-dc1d-4f51-a207-f761eaf73c31'
    

3.使用这两个参数连接到您的驱动程序。

    driver = webdriver.Remote(command_executor=url,desired_capabilities={})
    driver.session_id = session_id
  1. 并且您再次连接到您的驱动程序。

    driver.get(" http://www.mrsmart.in ")

于 2015-10-01T07:51:32.553 回答
6

这在 Selenium、任何浏览器和任何编程语言中都是不可能的。

https://code.google.com/p/selenium/issues/detail?id=18

于 2013-09-10T14:22:09.413 回答
3

现在它是,

  1. 启动 java 服务器
  2. 点击 localhost:4444/wd/hub
  3. 为适当的浏览器创建会话
  4. 使用给定的会话 ID 创建远程 webdriver 客户端(语法可能因您使用的语言绑定而异)

参考:github问题

于 2015-08-11T21:52:26.850 回答