基于 Scrapling 为 AI Agent 配置网页爬虫技能指南
Scrapling 是一个基于 Python 的智能爬虫库,能够自动绕过反爬虫机制并智能解析网页内容。本文将介绍如何将其集成到 AI Agent(如 OpenClaw)中,实现自动化数据抓取。
环境准备
- 操作系统:Linux (推荐阿里云等云服务器)
- Python 版本:Miniconda 3.13+
- 框架:OpenClaw
实施步骤
第 1 步:创建技能文件夹
mkdir -p /root/.openclaw/workspace/skills/scrapling
cd /root/.openclaw/workspace/skills/scrapling
第 2 步:编写配置文件
创建 SKILL.md 文件,定义技能的触发条件:
# 爬虫技能
**触发条件**:
- 用户说"爬取 XX 网站"
- 用户说"抓取 XX 数据"
- 用户说"去 XX 官网搜索"
第 3 步:编写爬取脚本
创建 fetch.py 文件,优先使用 Scrapling,失败则回退至 requests:
#!/usr/bin/env python3
"""网页爬取封装脚本
优先使用 Scrapling,失败则用 requests 作为备选
https://github.com/D4Vinci/Scrapling
"""
import json
import argparse
import warnings
warnings.filterwarnings('ignore')
def fetch_with_scrapling(url, max_length=5000):
"""使用 Scrapling 爬取网页"""
from scrapling import Fetcher
session = Fetcher()
response = session.get(url, verify=False, timeout=30)
if response.status == 200:
# 关键:用 html_content 不是 text!
content = response.html_content
truncated = content[:max_length]
return {
"status": "success",
: url,
: response.status,
: (content),
: truncated,
: (content) > max_length,
:
}
():
requests
headers = {: }
response = requests.get(url, headers=headers, verify=)
{
: ,
: response.text[:max_length],
:
}
():
parser = argparse.ArgumentParser()
parser.add_argument()
parser.add_argument(, =, default=)
args = parser.parse_args()
result = fetch_with_scrapling(args.url, args.max_length)
result result.get(, ) == :
result = fetch_with_requests(args.url, args.max_length)
(json.dumps(result, indent=))
__name__ == :
main()


