查看原文
其他

爬虫代码都自动生成,Python,Java,Javascript随你选

alitrack alitrack 2022-11-12

没有错,就是之前 Playwright 实战,爬取微软 Rust 入门教程视频 里介绍的 Playwright 的另外一个应用。先看段视频吧。

安装

本文仍然以 Python 为例介绍 Playwright 的 codegen 功能

pip install -U playwright
playwright install

使用 Playwright codegen

使用代码生成工具,Playwright 会把我们在网页上执行的操作自动转成代码。最简单的用法就是

playwright codegen

这时候会弹出一个 Chromium 浏览器和一个 Playwright Inspector, 你可以选择目标语言,也可以暂停录制。

codegen 的参数不止这些,

Usage: playwright codegen [options] [url]

open page and generate code for user actions

Options:
  -o, --output <file name>        保存生成的脚本到文件
  --target <language>             生成语言, 可以是 javascript, test, python, python-async, pytest, csharp, csharp-mstest, csharp-nunit, java (默认: python)
  --save-trace <filename>         记录会话的痕迹并将其保存到文件中
  -b, --browser <browserType>     浏览器类型, 可以是 cr, chromium, ff, firefox, wk, webkit (默认: chromium)
  --block-service-workers         阻断 service workers
  --channel <channel>             Chromium 发行渠道, "chrome""chrome-beta""msedge-dev", 等
  --color-scheme <scheme>         模拟首选配色方案, "light" 或 "dark"
  --device <deviceName>           模拟设备, 比如  "iPhone 11"
  --geolocation <coordinates>     指定地理位置坐标, 如 "37.819722,-122.478611"
  --ignore-https-errors           忽略 https 错误
  --load-storage <filename>       从以前保存(--save-storage)的文件加载上下文存储状态
  --lang <language>               指定语言(地区), 如 "en-GB"
  --proxy-server <proxy>          指定代理服务器, 如 "http://myproxy:3128" or "socks5://myproxy:8080"
  --proxy-bypass <bypass>         逗号分隔绕过代理的域, 如 ".com,chromium.org,.domain.com"
  --save-har <filename>           结束时保存HAR文件与所有网络活动
  --save-har-glob <glob pattern>  适用glob模式匹配url来过滤HAR中的条目
  --save-storage <filename>       在最后保存上下文存储状态,以便稍后供 --load-storage 使用
  --timezone <time zone>          模拟时区, 如 "Europe/Rome"
  --timeout <timeout>             设置 Playwright 动作的超时时间(单位毫秒),默认没有超时
  --user-agent <ua string>        指定 user agent 字符串
  --viewport-size <size>          指定浏览器窗口大小(单位像素), 如 "1280, 720"
  -h, --help                      显示此帮助

Examples:

  $ codegen
  $ codegen --target=python
  $ codegen -b webkit https://example.com

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存