添加 README:项目说明、环境、使用步骤与文件说明
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
49
README.md
Normal file
49
README.md
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
# audiencescf
|
||||||
|
|
||||||
|
使用 Nodriver 自动通过 Cloudflare Turnstile 验证,访问受保护的目标页面。通过页面上的「给我搜」按钮(`#search_btn`)判断是否已通过验证。
|
||||||
|
|
||||||
|
## 功能
|
||||||
|
|
||||||
|
- 启动时从项目根目录 `cookies.txt` 加载 Cookie(支持 Netscape 与 nodriver 原生格式)
|
||||||
|
- 进入目标页后根据 `#search_btn` 的 value 是否为「给我搜」判断是否需要验证
|
||||||
|
- 需要验证时:等待 CF 自动通过 + 使用模板匹配点击 Turnstile 复选框(依赖 `box.png`)
|
||||||
|
- 验证后等待 10 秒再次检查;若仍未变为「给我搜」则刷新页面并重新走验证流程,直到通过或手动关闭
|
||||||
|
|
||||||
|
## 环境
|
||||||
|
|
||||||
|
- Python 3.x
|
||||||
|
- 依赖:`nodriver`;点击 Turnstile 时需 `opencv-python`(模板匹配)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
pip install -r requirements.txt
|
||||||
|
pip install opencv-python
|
||||||
|
```
|
||||||
|
|
||||||
|
## 使用
|
||||||
|
|
||||||
|
1. 在 `main.py` 中确认 `TARGET_URL` 为目标页面地址。
|
||||||
|
2. (可选)在项目根目录放置 `cookies.txt`:
|
||||||
|
- Netscape 格式:首行为 `# Netscape` 或 `# HTTP Cookie File`
|
||||||
|
- 或使用 nodriver 原生导出的格式
|
||||||
|
3. 若使用 Turnstile 点击,确保根目录有模板图 `box.png`(与当前页面复选框区域匹配)。
|
||||||
|
4. 运行:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
python main.py
|
||||||
|
```
|
||||||
|
|
||||||
|
默认以有界面浏览器运行,便于通过验证。
|
||||||
|
|
||||||
|
## 文件说明
|
||||||
|
|
||||||
|
| 文件 | 说明 |
|
||||||
|
|------|------|
|
||||||
|
| `main.py` | 主流程:加载 Cookie、打开页面、判断验证、点击 Turnstile、循环重试 |
|
||||||
|
| `cookies_loader.py` | 读取并注入 `cookies.txt`(Netscape / 原生格式) |
|
||||||
|
| `box.png` | Turnstile 复选框模板图,用于截图匹配点击 |
|
||||||
|
| `cookies.txt` | 本地 Cookie 文件(已加入 .gitignore,勿提交) |
|
||||||
|
|
||||||
|
## 注意
|
||||||
|
|
||||||
|
- `cookies.txt`、`click_position.png` 等已写入 `.gitignore`,不会随仓库提交。
|
||||||
|
- 修改目标站点时请同步确认 `#search_btn` 与「给我搜」的文案是否仍适用于该页面。
|
||||||
Reference in New Issue
Block a user