admin管理员组

文章数量:1535375

要使用Python的playwright连接操作已经打开的浏览器,需要使用playwright的connect_over_cdp方法。具体步骤如下:

打开浏览器,指定调试端口

在 CMD 终端中通过命令行启动 Chrome 浏览器

cd C:\Program Files\Google\Chrome\Application && chrome.exe \
--remote-debugging-port=9222 \
--user-data-dir=“C:\playwright\user_data”

--remote-debugging-port 指定浏览器调试端口号
这里可以随机指定一个端口号,不要指定为已经被占用的端口号
--user-data-dir 用户配置文件目录
这里需要单独指定一个文件夹目录(不存在会新建),如果不显式指定该参数,运行会污染浏览器默认的配置文件

连接浏览器

在Python中使用playwright的connect方法连接到已经打开的浏览器。可以使用以下代码:

from playwright.sync_api import Playwright, sync_playwright

with sync_playwright() as playwright:
    browser = playwright.chromium.connect_over_cdp("http://localhost:9222")
    default_context = browser.contexts[0]
    page = default_context.pages[0]
    print(page)

其中,connect_over_cdp参数指定连接的http地址,这里使用的是已经打开的浏览器的地址。

打开新页面

  1. 连接成功后,就可以使用browser对象进行操作了。例如,可以使用以下代码打开一个新的页面:
page = default_context.new_page()
page.goto("https://www.baidu")

参考

https://mp.weixin.qq/s/tygP_jTDligDzTk-5c50kA
https://playwright.dev/python/docs/api/class-browsertype#browser-type-connect-over-cdp

本文标签: 浏览器操作playwright