工具
Spider Scraper
SpiderTool
设计用于使用 Spider 提取和读取指定网站的内容。
SpiderTool
描述
Spider 是最快的开源刮取器和爬虫,返回 LLM 可用的数据。它可以将任何网站转换为纯 HTML、Markdown、元数据或文本,同时使您能够使用 AI 通过自定义操作进行爬取。
安装
要使用 SpiderTool
,您还需要下载 Spider SDK 和 crewai[tools]
SDK。
示例
此示例展示了如何使用 SpiderTool
使您的代理能够刮取和爬取网站。从 Spider API 返回的数据已经是 LLM 可用的,因此无需进行任何清理。
代码
参数
参数 | 类型 | 描述 |
---|---|---|
api_key | string | 指定 Spider API 密钥。如果未指定,则在环境变量中查找 SPIDER_API_KEY 。 |
params | object | 请求的可选参数。默认为 {"return_format": "markdown"} ,以优化 LLM 内容。 |
request | string | 要执行的请求类型 (http , chrome , smart )。smart 默认为 HTTP,必要时切换到 JavaScript 渲染。 |
limit | int | 每个网站要爬取最大页面数。设置为 0 或省略表示无限制。 |
depth | int | 最大爬取深度。设置为 0 表示无限制。 |
cache | bool | 启用 HTTP 缓存以加快重复运行。默认为 true 。 |
budget | object | 为爬取的页面设置基于路径的限制,例如 {"*":1} 表示只爬取根页面。 |
locale | string | 请求的区域设置,例如 en-US 。 |
cookies | string | 请求的 HTTP Cookie。 |
stealth | bool | 为 Chrome 请求启用隐身模式以避免被检测。默认为 true 。 |
headers | object | 作为所有请求的键值对映射的 HTTP 头部。 |
metadata | bool | 存储关于页面和内容的元数据,有助于 AI 互操作性。默认为 false 。 |
viewport | object | 设置 Chrome 视口尺寸。默认为 800x600 。 |
encoding | string | 指定编码类型,例如 UTF-8 , SHIFT_JIS 。 |
subdomains | bool | 爬取时包含子域名。默认为 false 。 |
user_agent | string | 自定义 HTTP 用户代理。默认为随机代理。 |
store_data | bool | 为此请求启用数据存储。设置时会覆盖 storageless 。默认为 false 。 |
gpt_config | object | 允许 AI 生成爬取操作,可通过数组为 "prompt" 选择链式步骤。 |
fingerprint | bool | 为 Chrome 启用高级指纹识别。 |
storageless | bool | 阻止所有数据存储,包括 AI 嵌入。默认为 false 。 |
readability | bool | 通过 Mozilla 的 Readability 预处理内容以供阅读。优化 LLM 内容。 |
return_format | string | 返回数据的格式:markdown , raw , text , html2text 。使用 raw 获取默认页面格式。 |
proxy_enabled | bool | 启用高性能代理以避免网络级阻塞。 |
query_selector | string | 用于从标记中提取内容的 CSS 查询选择器。 |
full_resources | bool | 下载与网站链接的所有资源。 |
request_timeout | int | 请求的超时时间(秒,5-60)。默认为 30 。 |
run_in_background | bool | 在后台运行请求,有助于数据存储和触发仪表板爬取。如果设置了 storageless 则无效。 |