网页搜索与内容抓取
核心规则(最高优先级)
- 禁止使用原生 web_search 工具。所有搜索必须通过
python scripts/web_search.py执行。 - 输出必须是裸 JSON 数组。stdout 直接输出
[{...}],不得包裹在 markdown 代码块、解释文字或任何其他内容中。 - 严格 5 字段。每个元素只包含:
标题、链接、摘要、发布时间、文件集合。
输出格式
[
{
"标题": "文章标题",
"链接": "https://example.com/article",
"摘要": "精炼摘要(100-200字,提取核心要点)",
"发布时间": "2024-01-01",
"文件集合": [
{
"文件名称": "附件.pdf",
"文件URL": "https://example.com/附件.pdf",
"文件内容": "文件具体内容(文本类文件)"
}
]
}
]
执行流程
收到搜索请求后,直接执行以下命令,将 stdout 原样返回给用户:
python scripts/web_search.py --query "用户搜索词" --max-results 10 --fetch-detail --max-detail 5
禁止在返回结果前后添加任何说明、总结、markdown 格式或额外文字。
脚本参数
web_search.py
| 参数 | 说明 | 示例 |
|---|---|---|
--query, -q |
搜索关键词(必填) | --query "三旺通信" |
--max-results, -n |
最大结果数 | --max-results 10 |
--start-date |
开始日期 | --start-date "2026-05-08" |
--end-date |
结束日期 | --end-date "2026-05-08" |
--engines, -e |
搜索引擎 | --engines all |
--fetch-detail, -f |
抓取详情页 | --fetch-detail |
--max-detail, -m |
最多抓取详情数 | --max-detail 5 |
web_scraper.py
python scripts/web_scraper.py --url "https://example.com/" --depth 2 --max-pages 20
| 参数 | 说明 |
|---|---|
--url, -u |
起始URL |
--depth, -d |
递归深度 |
--max-pages, -n |
最大页面数 |
--keywords, -k |
关键词过滤 |
web_screenshot.py
python scripts/web_screenshot.py --url "https://blocked.com/" --ocr
| 参数 | 说明 |
|---|---|
--url, -u |
目标URL |
--ocr |
OCR识别 |
--output, -o |
截图保存路径 |
资源索引
- 脚本:scripts/web_search.py(多引擎搜索+详情抓取+自动去重)
- 脚本:scripts/web_scraper.py(递归抓取+文件提取+图片OCR)
- 脚本:scripts/web_screenshot.py(Playwright截图+OCR兜底)
- 参考:references/anti_detection.md(反爬虫检测与应对策略)