Skip to main content

Ruby

Firecrawl Ruby SDK 是对 Firecrawl API 的封装,帮助你轻松将网站转换为 Markdown。
2 min read

安装#

官方 Ruby SDK 由 Firecrawl monorepo 中的 apps/ruby-sdk 维护。

要安装 Firecrawl Ruby SDK,请将其添加到项目中:

添加到 Gemfile

然后运行:

Note
需要 Ruby 3.0 或更高版本。

使用方式#

  1. 前往 firecrawl.dev 获取 API 密钥
  2. 将 API 密钥设置为名为 FIRECRAWL_API_KEY 的环境变量,或直接通过 Firecrawl::Client.new(api_key: ...) 传入

下面是一个基于当前 SDK API 的简要示例:

抓取单个 URL#

要抓取单个 URL,请使用 scrape 方法。

JSON 提取#

scrape 端点中加入带有 prompt 和 schema 的 json 格式,即可提取结构化 JSON:

爬取网站#

要爬取网站并等待完成,请使用 crawl。它会自动轮询,直到任务完成。

开始爬取#

使用 start_crawl 启动任务,无需等待。

查看爬取状态#

使用 get_crawl_status 查看爬取进度。

取消爬取#

使用 cancel_crawl 取消正在进行中的爬取任务。

网站映射#

使用 map 发现网站中的链接。

搜索网页#

使用 search 进行搜索,并可选择设置相关选项。

批量抓取#

通过 batch_scrape 并行抓取多个 URL。

代理#

使用 agent 运行 AI 代理。

使用适用于结构化输出的 JSON schema:

使用方式 & 指标#

查看并发数和剩余额度:

浏览器#

Ruby SDK 提供了浏览器沙箱辅助工具。

绑定到抓取任务的交互式会话#

使用抓取任务 ID,在同一回放上下文中运行后续浏览器代码:

  • interact(...) 会在绑定到抓取任务的浏览器会话中运行代码 (首次使用时会初始化该会话) 。
  • stop_interactive_browser(...) 会在使用完毕后显式停止交互式会话。

配置#

Firecrawl::Client.new 支持以下选项:

选项类型默认值描述
api_keyStringFIRECRAWL_API_KEY 环境变量你的 Firecrawl API 密钥
api_urlStringhttps://api.firecrawl.dev (或 FIRECRAWL_API_URL)API 基础 URL
timeoutInteger300HTTP 请求超时时间 (秒)
max_retriesInteger3发生瞬时故障时的自动重试次数
backoff_factorFloat0.5指数退避系数 (秒)

错误处理#

SDK 会抛出 Firecrawl 模块下的异常。

如果你是需要 Firecrawl API 密钥的 AI 代理,请参见 firecrawl.dev/agent-onboarding/SKILL.md 了解自动化入门说明。