使用Python与Google Chrome的现有实例进行交互



我的目标是使用Selenium(或类似的模块(在Chrome上抓取一个网站。然而,该项目的一个重要方面是避免使用由测试软件控制的浏览器,即使用打开的浏览器

driver = webdriver.Chrome('...')
driver.get('https://www.google.com/')

我确实理解Selenium使这种目标非常容易实现,但某些限制(例如必须登录网站,避免将个人详细信息输入代码,避免使用输入手动输入个人详细信息(阻碍了它的实现

我的第一步是使用操作系统在Chrome的现有实例中打开一个新的选项卡,这是我手动打开的,效果很好。

os.system(f'start chrome.exe {link}')

这就是我被卡住的地方。我浏览了操作系统目录,但不确定该查找什么。我是这类编码的新手,所以我不知道如何进行,什么模块在这里会有帮助,或者我应该在哪里寻求进一步的帮助。

TL;DR:

如何使用Python和Selenium(或其他(与手动打开的Chrome浏览器进行交互(抓取信息、导航页面元素等(?

使用调试端口启动chrome:

<path>chrome.exe" --remote-debugging-port=1559

硒的使用:

`System.setProperty("webdriver.chrome.driver","C:\chromedriver.exe"(;

ChromeOptions options = new ChromeOptions();
options.setExperimentalOption("debuggerAddress", "127.0.0.1:1559");
WebDriver browser=new ChromeDriver(options);`

Python:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
chrome_options = Options()
chrome_options.add_experimental_option("debuggerAddress", "127.0.0.1:1559")
driver = webdriver.Chrome(options=chrome_options)

最新更新