项目简介
它能够抓取任何网站的所有可访问子页面,而且无需站点地图,并将这些内容转换为干净的Markdown格式。FireCrawl 与传统的网页爬虫工具不同,即使网站使用JavaScript动态生成其内容,FireCrawl 也能有效地抓取这些内容。FireCrawl 还提供了一个易于使用的API,使开发者能够通过简单的API调用实现内容的爬取和转换。
抓取任何网站并将其转换为 LLM-ready markdown。按 Mendable.ai 构建
该存储库目前处于开发的早期阶段。我们正在将自定义模块合并到这个单声道存储库中。主要目标是通过利用干净的数据来提高响应的LLM准确性。它还没有准备好完全自托管 - 我们正在努力
什么是 Firecrawl?
Firecrawl 是一种 API 服务,它获取 URL、抓取它并将其转换为干净的 Markdown。我们抓取所有可访问的子页面,并为每个子页面提供干净的降价。无需站点地图。
如何使用它?
我们在托管版本中提供了一个易于使用的 API。您可以在此处找到 Playground 和文档。如果您愿意,您也可以自行托管后端。
-
API 应用程序接口
-
Python 开发工具包
-
Node SDK 节点 SDK
-
Langchain集成 🦜🔗
-
Llama Index 集成 🦙
-
LangchainJS - 即将推出
自托管。要自托管,请参阅此处的指南。
API 密钥
要使用 API,您需要在 Firecrawl 上注册并获取 API 密钥。
抓取
用于抓取 URL 和所有可访问的子页面。这将提交爬网作业并返回作业 ID 以检查爬网的状态。
curl -X POST https://api.firecrawl.dev/v0/crawl \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-d '{
"url": "https://mendable.ai"
}'
返回 jobId
{ "jobId": "1234-5678-9101" }
检查爬网作业
用于检查爬网作业的状态并获取其结果。
curl -X GET https://api.firecrawl.dev/v0/crawl/status/1234-5678-9101 \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer YOUR_API_KEY'
{
"status": "completed",
"current": 22,
"total": 22,
"data": [
{
"content": "Raw Content ",
"markdown": "# Markdown Content",
"provider": "web-scraper",
"metadata": {
"title": "Mendable | AI for CX and Sales",
"description": "AI for CX and Sales",
"language": null,
"sourceURL": "https://www.mendable.ai/",
}
}
]
}
使用 Python SDK
安装 Python SDK
抓取网站
from firecrawl import FirecrawlApp
app = FirecrawlApp(api_key="YOUR_API_KEY")
crawl_result = app.crawl_url('mendable.ai', {'crawlerOptions': {'excludes': ['blog/*']}})
# Get the markdown
for result in crawl_result:
print(result['markdown'])
抓取网址
要抓取单个 URL,请使用该 scrape_url 方法。它将 URL 作为参数,并以字典的形式返回抓取的数据。