undetected-playwright 项目使用教程
1. 项目目录结构及介绍
undetected-playwright/
├── examples/
│ └── undetected_playwright/
├── .gitignore
├── LICENSE
├── README.md
├── pyproject.toml
├── requirements.txt
└── setup.py
- examples/: 包含示例代码的目录,展示了如何使用
undetected-playwright
进行自动化测试。 - .gitignore: 指定 Git 版本控制系统忽略的文件和目录。
- LICENSE: 项目的开源许可证,本项目使用 Apache-2.0 许可证。
- README.md: 项目的介绍文档,包含项目的基本信息、安装方法和使用示例。
- pyproject.toml: 项目的配置文件,定义了项目的构建系统和依赖。
- requirements.txt: 列出了项目运行所需的 Python 依赖包。
- setup.py: 用于安装项目的脚本,定义了项目的元数据和依赖。
2. 项目的启动文件介绍
项目的启动文件通常是 setup.py
和 README.md
中的示例代码。以下是一个简单的启动示例:
import webbrowser
from datetime import datetime
from pathlib import Path
from playwright.sync_api import sync_playwright, Page
from undetected_playwright import Tarnished
def cache_screenshot(page: Page):
_now = datetime.now().strftime("%Y-%m-%d")
_suffix = f"-view-new-[datetime.now().strftime('%H%M%S')]"
path = f"result/[_now]/sannysoft[_suffix].png"
page.screenshot(path=path, full_page=True)
webbrowser.open(f"file://[Path(path).resolve()]")
def main():
args = ["--headless=new", "--dump-dom"]
with sync_playwright() as p:
browser = p.chromium.launch(args=args)
context = browser.new_context(locale="en-US")
Tarnished.apply_stealth(context)
page = context.new_page()
page.goto("https://bot.sannysoft.com/", wait_until="networkidle")
cache_screenshot(page)
browser.close()
if __name__ == "__main__":
main()
启动文件功能介绍
- sync_playwright: 同步版本的 Playwright API,用于启动浏览器和创建页面。
- Tarnished.apply_stealth(context): 应用反检测技术,避免被检测为自动化工具。
- page.goto: 导航到指定的 URL。
- page.screenshot: 截取页面截图并保存到指定路径。
- webbrowser.open: 打开保存的截图文件。
3. 项目的配置文件介绍
pyproject.toml
[build-system]
requires = ["setuptools>=42", "wheel"]
build-backend = "setuptools.build_meta"
[project]
name = "undetected-playwright"
version = "0.1.0"
description = "Undetected Playwright"
authors = [
{ name="QIN2DIM", email="qin2dim@example.com" }
]
dependencies = [
"playwright",
"requests",
"beautifulsoup4"
]
配置文件功能介绍
- [build-system]: 定义了构建系统的要求和后端。
- [project]: 定义了项目的元数据,包括项目名称、版本、描述、作者和依赖。
requirements.txt
playwright
requests
beautifulsoup4
配置文件功能介绍
- requirements.txt: 列出了项目运行所需的 Python 依赖包,可以通过
pip install -r requirements.txt
安装。
通过以上内容,您可以了解 undetected-playwright
项目的目录结构、启动文件和配置文件的基本信息,并能够根据示例代码进行项目的启动和配置。