playwright的安装(python3.7+)
pip install playwright
Playwright 录制脚本
python -m playwright codegen
通过--help 查看可以用哪些参数,有很多,这里只挑几个简单的常用的来说
-o:指定脚本录制输出位置;
--target:指定脚本语言,告诉他用什么语言写,后面一大堆,还有个python-pytest!,默认用python
-b:指定浏览器驱动,默认用的谷歌
准备工作
playwright install
这个命令会确保所有Playwright支持的浏览器(包括Chromium、Firefox和WebKit)都被下载并正确安装到各自对应的目录下。
完成此操作后,您应该可以正常使用Playwright而不遇到上述错误(Error: Executable doesn't exist at C:\Users\EDY\AppData\Local\ms-playwright\chromium-1067\chrome-win\chrome.exe)。
我们来小试牛刀一下吧
$ python -m playwright codegen -o "D:\PythonProject\playwright_project\shizaizhienng_code.py"
执行命令之后会弹出以下窗口,可以Targent字段下选择脚本语言及框架
之后我们用它自动打开的谷歌浏览器,打开百度,输入"实在智能"并查找,结束录制,看看录制脚本
from playwright.sync_api import Playwright, sync_playwright, expect
import time
def run(playwright: Playwright) -> None:
browser = playwright.chromium.launch(headless=False)
context = browser.new_context()
page = context.new_page()
page.goto("https://www.baidu.com/")
page.locator("#kw").fill("实在智能")
page.locator("#kw").press("Enter")
with page.expect_popup() as page1_info:
page.get_by_role("link", name="杭州实在智能科技有限公司(超自动化解决方案公司... - 百度百科").click()
page1 = page1_info.value
time.sleep(10) # 这行是手动加的
page1.close()
page.close()
# ---------------------
context.close()
browser.close()
with sync_playwright() as playwright:
run(playwright)
查看是否运行成功
OK,完全可以