Pyppeteer 是 Puppeteer 的 Python 实现。Puppeteer 是谷歌开发的一个 Node 库,它提供了一个高级API 来通过 DevTools 协议控制 Chromium 或 Chrome。Pyppeteer 默认以 headless模式运行,但是可以通过修改配置文件运行“有头”模式。
能做什么呢?
- 生成页面的截图和 PDF。
- 抓取 SPA (单页应用程序)并渲染页面
- 自动提交表单,UI 测试,键盘输入等。
- 创建一个时时更新的自动化测试环境。
- 捕捉异常跟踪堆栈来帮助诊断性能问题。
- 高级功能如 js 注入、模拟操作、异步执行、伪装
Pyppeteer API 是分层次的,反映了浏览器结构

注释:
- Pyppeteer 使用 DevTools 协议 与浏览器进行通信。
- Browser 实例可以拥有浏览器。
- BrowserContext 浏览器上下文。
- Page 至少有一个框架:主框架。可能还有其他框架由 iframe 或 框架标签 创建。
- frame 至少有一个执行上下文 - 默认的执行上下文 - 框架的 JavaScript 被执行。一个框架可能有额外的与 扩展
关联的执行上下文。 - Worker 具有单一执行上下文,并且便于与 WebWorkers 进行交互。
Pyppeteer 的结构,也是代码的顺序结构;
import asyncio
from pyppeteer import launch
async def main():
# 启动,返回 browser
browser = await launch({
'headless'

Pyppeteer是一个用于网页自动化和无头Chrome/Chromium控制的Python库,可用于生成页面截图、PDF,抓取SPA,自动表单提交、UI测试等。它通过DevTools协议与浏览器通信,支持高级功能如JavaScript注入、模拟操作。在使用中,可能需要手动安装Chromium。以下是一个简单的使用流程:创建浏览器实例,打开新页面,设置视窗大小,导航到URL,模拟输入和点击操作,最后关闭浏览器。
最低0.47元/天 解锁文章
7068

被折叠的 条评论
为什么被折叠?



