开始使用
高级抓取指南
学习如何使用高级选项改进您的Firecrawl抓取。
本指南将引导您了解Firecrawl的不同端点,以及如何充分利用其所有参数来使用它们。
使用Firecrawl进行基础抓取(/scrape)
要抓取单个页面并获取干净的Markdown内容,您可以使用/scrape
端点。
抓取PDF文件
Firecrawl默认支持抓取PDF文件。 您可以使用/scrape
端点抓取一个PDF链接并获得该PDF的文本内容。您可以通过设置pageOptions.parsePDF
为false
来禁用此功能。
页面选项
使用/scrape
端点时,您可以使用pageOptions
参数自定义抓取行为。以下是可用选项:
仅获取主要内容(onlyMainContent
)
- 类型:
boolean
- 描述:仅返回页面的主要内容,排除标题、导航栏、页脚等。
- 默认值:
false
包含HTML内容(includeHtml
)
- 类型:
boolean
- 描述:包含页面的HTML版本内容。这将在响应中添加一个
html
键。 - 默认值:
false
包含原始HTML内容(includeRawHtml
)
- 类型:
boolean
- 描述:包含页面的原始HTML内容。这将在响应中添加一个
rawHtml
键。 - 默认值:
false
获取页面截图(screenshot
)
- 类型:
boolean
- 描述:包括您正在抓取的页面顶部的截图。
- 默认值:
false
等待页面加载(waitFor
)
- 类型:
integer
- 描述:仅作为最后的手段使用。等待指定的毫秒数让页面加载后再获取内容。
- 默认值:
0
示例用法
在这个示例中,抓取器将会:- 仅返回页面的主要内容。
- 在响应的
html
键中包含原始 HTML 内容。 - 在抓取内容前等待 5000 毫秒(5 秒)让页面加载完成。
以下是相关 API 文档:Scrape Endpoint Documentation
提取器选项
在使用 /scrape
端点时,可以通过 extractorOptions
参数指定从页面内容中提取结构化信息的选项。以下是可用的选项:
mode
-
类型:
string
-
枚举:
["llm-extraction", "llm-extraction-from-raw-html"]
-
描述:使用的提取模式。
llm-extraction
:从清理和解析后的内容中提取信息。llm-extraction-from-raw-html
:直接从原始 HTML 中提取信息。
-
类型:
string
-
描述:一个提示,描述从页面中提取哪些信息。
extractionSchema
- 类型:
object
- 描述:要提取的数据的模式。这定义了提取数据的结构。
示例用法
调整超时时间
可以使用 timeout
参数(以毫秒为单位)来调整抓取过程的超时时间。
示例用法
爬取多个页面
要爬取多个页面,可以使用 /crawl
端点。此端点允许你指定要爬取的基础 URL,并将爬取所有可访问的子页面。
返回 jobId
抓取器选项
使用 /crawl
端点时,可以通过 crawlerOptions
参数自定义抓取行为。以下是可用的选项:
includes
- 类型:
array
- 描述: 包含在抓取中的URL模式。只有匹配这些模式的URL才会被抓取。
- 示例:
["/blog/*", "/products/*"]
excludes
- 类型:
array
- 描述: 从抓取中排除的URL模式。匹配这些模式的URL将被跳过。
- 示例:
["/admin/*", "/login/*"]
returnOnlyUrls
- 类型:
boolean
- 描述: 如果设置为
true
,响应将只包含URL列表,而不是完整的文档数据。 - 默认值:
false
maxDepth
- 类型:
integer
- 描述: 相对于输入URL的最大抓取深度。
maxDepth
为 0 时仅抓取输入的URL。maxDepth
为 1 时抓取输入的URL及其所有一级页面。maxDepth
为 2 时抓取输入的URL及其所有最多两级的页面。更高的值遵循相同的模式。 - 示例:
2
mode
- 类型:
string
- 枚举:
["default", "fast"]
- 描述: 使用的抓取模式。
fast
模式在没有站点地图的情况下抓取网站速度快4倍,但可能准确性较低,不建议用于重度JavaScript渲染的网站。 - 默认值:
default
limit
- 类型:
integer
- 描述: 最大抓取页面数。
- 默认值:
10000
示例用法
在这个示例中,抓取器将:
- 仅抓取匹配
/blog/*
和/products/*
模式的URL。 - 跳过匹配
/admin/*
和/login/*
模式的URL。 - 返回每个页面的完整文档数据。
- 抓取最多深度为2。
- 使用快速抓取模式。
- 最多抓取1000页。
页面选项 + 抓取器选项
您可以结合 pageOptions
和 crawlerOptions
参数来自定义整个抓取行为。
示例用法
在这个示例中,抓取器将:
- 仅返回每个页面的主内容。
- 包括每个页面的原始HTML内容。
- 在获取内容前等待5000毫秒让每个页面加载。
- 仅抓取匹配
/blog/*
和/products/*
模式的URL。 - 抓取最多深度为2。
- 使用快速抓取模式。
提取器选项 + 抓取器选项
即将推出…