功能指南
欢迎来到 Pydoll 的综合功能文档!在这里,您将发现使 Pydoll 成为强大而灵活的浏览器自动化工具的一切。无论您是刚刚入门还是希望利用高级功能,您都将找到每个功能的详细指南、实用示例和最佳实践。
您将在这里找到什么
本指南按照逻辑部分组织,反映了您的自动化之旅:从基本概念到高级技术。每个页面都设计为独立的,因此您可以直接跳转到您感兴趣的内容,或者按顺序学习。
核心概念
在深入了解特定功能之前,值得了解是什么使 Pydoll 与众不同。这些基础概念决定了整个库的工作方式。
核心概念:探索使 Pydoll 与众不同的架构决策:零 WebDriver 方法消除了兼容性问题,异步优先设计实现了真正的并发操作,以及对多个基于 Chromium 的浏览器的原生支持。
元素查找和交互
查找页面元素并与之交互是自动化的基础。Pydoll 通过现代化的 API 使这一过程变得出奇地直观。
元素查找:掌握 Pydoll 的元素定位策略,从使用自然 HTML 属性的直观 find() 方法,到用于 CSS 选择器和 XPath 的强大 query() 方法。您还将学习 DOM 遍历辅助工具,让您高效地导航页面结构。
自动化能力
这些功能使您的自动化栩栩如生:模拟用户交互、键盘控制、处理文件操作、使用 iframe 以及捕获视觉内容。
类人交互:学习如何创建真正感觉像人类的交互:具有自然时间变化的打字、具有真实鼠标移动的点击,以及像真实用户一样使用键盘快捷键。这对于避免在自动化敏感站点中被检测至关重要。
键盘控制:掌握键盘交互,全面支持组合键、修饰键和特殊键。对于表单、快捷键和可访问性测试至关重要。
文件操作:文件处理在浏览器自动化中可能很棘手。Pydoll 为上传和下载提供了强大的解决方案,expect_download 上下文管理器提供了优雅的异步下载完成处理。
IFrame 交互:使用 get_frame() 方法无缝处理嵌入式框架。获取 iframe 内容的完整 Tab 接口,使您能够在框架内使用 Pydoll 的所有元素查找和交互功能。
截图和 PDF:从您的自动化会话中捕获视觉内容。无论您需要用于视觉回归测试的整页截图、用于调试的元素特定捕获,还是用于归档的 PDF 导出,Pydoll 都能满足您的需求。
网络功能
Pydoll 的网络功能是它真正出色的地方,为您提供前所未有的 HTTP 流量可见性和控制。
网络监控:观察和分析浏览器会话中的所有网络活动。提取 API 响应、跟踪请求时间、识别失败的请求,并准确了解正在交换的数据。对于调试、测试和数据提取至关重要。
请求拦截:超越观察,主动修改网络行为。阻止不需要的资源、注入自定义标头、修改请求负载,甚至使用模拟数据满足请求。这对于测试、优化和隐私控制非常强大。
浏览器上下文 HTTP 请求:发出在浏览器的 JavaScript 上下文中执行的 HTTP 请求,自动继承会话状态、cookie 和身份验证。这种混合方法结合了 Python 的 requests 库的熟悉性与浏览器上下文执行的优势。
浏览器管理
有效的浏览器和标签页管理对于复杂的自动化场景、并行处理和多用户测试至关重要。
多标签页管理:同时使用多个浏览器标签页,确保高效的资源使用,同时让您完全控制标签页生命周期、检测用户打开的标签页以及并发抓取操作。
浏览器上下文:在单个浏览器进程内创建完全隔离的浏览环境。每个上下文维护单独的 cookie、存储、缓存和权限:非常适合多账户测试、A/B 测试或使用不同配置的并行抓取。
Cookie 和会话:在浏览器和标签页级别管理会话状态。以编程方式设置 cookie、提取会话数据,并在浏览器上下文中维护不同的会话以进行复杂的测试场景。
配置
自定义浏览器行为的各个方面以匹配您的自动化需求,从低级 Chromium 首选项到命令行参数和页面加载策略。
浏览器选项:配置 Chromium 的启动参数、命令行参数和页面加载状态控制。微调浏览器行为、启用实验性功能,并针对您的自动化需求优化性能。
浏览器首选项:直接访问 Chromium 的内部首选项系统,让您控制数百个设置。配置下载、禁用功能、优化性能,或为隐蔽自动化创建真实的浏览器指纹。
代理配置:具有完整身份验证功能的原生代理支持。对于需要 IP 轮换、地理定向测试或注重隐私的自动化的网络抓取项目至关重要。
高级功能
这些复杂的功能解决了复杂的自动化挑战和专门的用例。
行为验证码绕过:Pydoll 的原生行为验证码处理是其最受欢迎的功能之一。学习如何使用两种方法与 Cloudflare Turnstile、reCAPTCHA v3 和 hCaptcha 隐形挑战进行交互 - 用于保证完成的同步上下文管理器,以及用于非阻塞操作的后台处理。
事件系统:构建响应实时浏览器事件的响应式自动化。监控页面加载、网络活动、DOM 更改和 JavaScript 执行,以创建智能、自适应的自动化脚本。
远程连接:通过 WebSocket 连接到已运行的浏览器以实现混合自动化场景。非常适合 CI/CD 管道、容器化环境或将 Pydoll 集成到现有的 CDP 工具中。
如何使用本指南
每个功能页面遵循一致的结构:
- 概述 - 功能的作用及其重要性
- 基本用法 - 通过简单示例快速入门
- 高级模式 - 充分利用功能的潜力
- 最佳实践 - 有效和高效使用的技巧
- 常见陷阱 - 从常见错误中学习
您可以根据需要以任何顺序探索功能。代码示例是完整的并且可以直接运行 - 只需复制、粘贴并适应您的用例。
准备深入了解 Pydoll 的功能了吗?选择一个您感兴趣的功能,开始探索吧!🚀