小编Noa*_*oam的帖子

使用 pyppeteer 连接到现有的 chrome

我想使用pyppeteer连接到现有的(已由用户打开,没有任何额外标志)Chrome 浏览器这样我就能够控制它。

我之前几乎可以完成所有手动操作(例如,在现有 chrome 中启用远程调试模式),但最好用最少的操作来完成。

为了使用browser.connect,我需要给它browserWSEndpoint,这相当于webSocketDebuggerUrl在'http://localhost:9222/json/version'下。

我的问题是,只有当我运行 chrome 时,我才能访问“http://localhost:9222/json/version”--headless,否则我无法获取该字符串。

我尝试从 cmd: 运行, chrome --disable-gpu --remote-debugging-port=9222 https://stackoverflow.com 它在打开的 chrome 实例下打开一个新选项卡,但我仍然无法访问“http://localhost:9222/json/version”来获取webSocketDebuggerUrl(当尝试访问该实例时,我收到“ERR_CONNECTION_REFUSED”)地址)。

我该怎么做?我在网上找不到任何东西。

编辑(还改进了问题的第一段):

感谢大家的回答,但似乎我最初想做的事情是不可能的。如果现有 Chrome 不是首次打开(浏览器的第一个实例)且带有--remote-debugging-port=XXXX允许您远程控制它的标志,则您无法连接到该 Chrome。一旦打开浏览器的第一个实例,它就会锁定浏览器的用户数据,并且无法从命令行将标志添加到浏览器(只能由用户从浏览器本身内部添加)。

python windows google-chrome pyppeteer

7
推荐指数
1
解决办法
8040
查看次数

标签 统计

google-chrome ×1

pyppeteer ×1

python ×1

windows ×1