SpiderTool

描述

Spider最快的 开源抓取器和爬虫,能够返回适合LLM的数据。它将任何网站转换为纯HTML、markdown、元数据或文本,同时允许您使用AI进行自定义操作的爬取。

安装

要使用SpiderTool,你需要下载Spider SDK以及crewai[tools] SDK:

pip install spider-client 'crewai[tools]'

示例

这个例子向你展示了如何使用SpiderTool来使你的代理能够抓取和爬取网站。 从Spider API返回的数据已经是LLM-ready的,因此不需要进行任何清理。

Code
from crewai_tools import SpiderTool

def main():
    spider_tool = SpiderTool()

    searcher = Agent(
        role="Web Research Expert",
        goal="Find related information from specific URL's",
        backstory="An expert web researcher that uses the web extremely well",
        tools=[spider_tool],
        verbose=True,
    )

    return_metadata = Task(
        description="Scrape https://spider.cloud with a limit of 1 and enable metadata",
        expected_output="Metadata and 10 word summary of spider.cloud",
        agent=searcher
    )

    crew = Crew(
        agents=[searcher],
        tasks=[
            return_metadata,
        ],
        verbose=2
    )

    crew.kickoff()

if __name__ == "__main__":
    main()

参数

参数类型描述
api_keystring指定Spider API密钥。如果未指定,则在环境变量中查找SPIDER_API_KEY
paramsobject请求的可选参数。默认为 {"return_format": "markdown"} 以优化LLMs的内容。
requeststring要执行的请求类型(http, chrome, smart)。smart 默认为 HTTP,如果需要则切换到 JavaScript 渲染。
limitint每个网站爬取的最大页面数。设置为0或省略表示无限制。
depthint最大爬取深度。设置为0表示无限制。
cachebool启用HTTP缓存以加速重复运行。默认值为true
budgetobject设置基于路径的爬取页面限制,例如,{"*":1} 仅用于根页面。
localestring请求的区域设置,例如 en-US
cookiesstring请求的HTTP cookies。
stealthbool启用Chrome请求的隐身模式以避免被检测。默认值为true
headersobjectHTTP 头信息,作为所有请求的键值对映射。
metadatabool存储有关页面和内容的元数据,帮助AI互操作性。默认为 false
viewportobject设置Chrome视口尺寸。默认值为800x600
encodingstring指定编码类型,例如 UTF-8, SHIFT_JIS
subdomainsbool在爬取中包含子域名。默认值为 false
user_agentstring自定义HTTP用户代理。默认为随机代理。
store_databool启用请求的数据存储。设置时会覆盖storageless。默认值为false
gpt_configobject允许AI生成爬取操作,并通过数组为"prompt"提供可选的链式步骤。
fingerprintbool启用Chrome的高级指纹识别功能。
storagelessbool阻止所有数据存储,包括AI嵌入。默认值为false
readabilitybool通过Mozilla’s readability预处理内容以提高可读性。改进LLMs的内容。
return_formatstring返回数据的格式:markdown, raw, text, html2text。使用raw作为默认页面格式。
proxy_enabledbool启用高性能代理以避免网络级别的阻塞。
query_selectorstring用于从标记中提取内容的CSS查询选择器。
full_resourcesbool下载与网站链接的所有资源。
request_timeoutint请求的超时时间(秒),范围为5-60。默认值为30
run_in_backgroundbool在后台运行请求,适用于数据存储和触发仪表板爬取。如果设置了storageless则无效。

这个页面有帮助吗?