To use puppeteer with existing chrome browser,我们需要使用参数–remote-debugging-port=9222
启动chrome,然后像这样读取打印输出
$ /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222 --no-first-run --no-default-browser-check
DevTools listening on ws://127.0.0.1:9222/devtools/browser/41a0b5f0–6747–446a-91b6–5ba30c87e951
需要此URL ws://127.0.0.1:9222/devtools/browser/41a0b5f0–6747–446a-91b6–5ba30c87e951
才能将peppeteeer连接到chrome实例。每次我们启动该应用程序时,它都会更改。在macOS或基于Unix的操作系统上,这不是问题。
但是,当在Windows上启动chrome时,将不会打印出来。这些是我用来在Winodws上启动Chrome的命令行
start chrome.exe –remote-debugging-port=9222
或者,在Powershell中
Start-Process "chrome.exe" -ArgumentList -remote-debugging-port=9222
有什么办法可以在Windows上获得这样的URL?
答案 0 :(得分:1)
radius
选项将为您完成这项工作。您可以这样做:
InkResponse
然后操纵pet的人会为您呼叫browserURL
端点。
答案 1 :(得分:0)
转到http://127.0.0.1:9222/json/version
,您将在webSocketDebuggerUrl
下看到它
{
"Browser": "Chrome/75.0.3770.100",
"Protocol-Version": "1.3",
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36",
"V8-Version": "7.5.288.23",
"WebKit-Version": "537.36 (@cd0b15c8b6a4e70c44e27f35c37a4029bad3e3b0)",
"webSocketDebuggerUrl": "ws://127.0.0.1:9222/devtools/browser/b0662788-1cfe-4ddb-9ed0-04c4ce95e1d2"
}
就我而言,就是"ws://127.0.0.1:9222/devtools/browser/b0662788-1cfe-4ddb-9ed0-04c4ce95e1d2"