功能
该集成提供了 4 个强大的 API,用于自动化网页数据提取:抓取网站
从任何单个 URL 提取内容,支持多种格式(Markdown、HTML、JSON、文本)
批量抓取 URL
并行处理多达 100,000 个 URL。非常适合大规模数据提取
创建爬取
通过跟随链接自主发现并抓取整个网站
创建地图
从网站中提取所有 URL,以进行站点结构分析和内容发现
安装
设置
1. 安装软件包
2. 导入并注册集成
在你的 Mastra 配置文件中:3. 配置 API 密钥
将你的 Olostep API 密钥设置为环境变量:.env 文件中:
可用 API
该集成公开了 4 个 API,供你的 Mastra 代理使用:scrapeWebsite
从单个 URL 提取内容。支持多种格式和 JavaScript 渲染。 使用场景:- 监控特定页面的变化
- 从电商网站提取产品信息
- 收集新闻文章或博客文章的数据
- 为内容聚合拉取内容
你的 Olostep API 密钥
要抓取的网站 URL(必须包含 http:// 或 https://)
输出格式:[‘html’, ‘markdown’, ‘json’, ‘text’]
用于特定位置内容的国家代码(例如,“US”、“GB”、“CA”)
JavaScript 渲染的等待时间(毫秒)(0-10000)
用于专门提取的可选解析器 ID(例如,“@olostep/amazon-product”)
id- 抓取 IDurl_to_scrape- 抓取的 URLresult.markdown_content- Markdown 内容result.html_content- HTML 内容result.json_content- JSON 内容result.text_content- 文本内容result.screenshot_hosted_url- 截图 URL(如果可用)result.markdown_hosted_url- 托管的 markdown URLobject- 对象类型(“scrape”)created- Unix 时间戳
batchScrape
并行处理多个 URL(一次最多 100,000 个)。非常适合大规模数据提取。 使用场景:- 抓取整个产品目录
- 从多个搜索结果中提取数据
- 处理电子表格中的 URL 列表
- 批量内容提取
你的 Olostep API 密钥
包含
url 和可选 custom_id 字段的对象数组示例:[{"url":"https://example.com","custom_id":"site1"}]所有 URL 的输出格式
用于特定位置抓取的国家代码
JavaScript 渲染的等待时间(毫秒)
用于专门提取的可选解析器 ID
batch_id- 批次 ID(稍后用于检索结果)status- 处理状态object- 对象类型(“batch”)
createCrawl
通过跟随链接自主发现并抓取整个网站。非常适合文档网站、博客和内容库。 使用场景:- 爬取并存档整个文档网站
- 从网站中提取所有博客文章
- 从网络内容中构建知识库
- 监控网站结构变化
你的 Olostep API 密钥
爬取的起始 URL(必须包含 http:// 或 https://)
要爬取的最大页面数。设置为
1 仅抓取起始 URL。抓取内容的格式
用于特定位置爬取的可选国家代码
用于专门内容提取的可选解析器 ID
id- 爬取 ID(稍后用于检索结果)object- 对象类型(“crawl”)status- 爬取状态created- Unix 时间戳
createMap
从网站中提取所有 URL 以进行内容发现和站点结构分析。 使用场景:- 构建站点地图和站点结构图
- 在批量抓取前发现所有页面
- 查找损坏或缺失的页面
- SEO 审计和分析
你的 Olostep API 密钥
要提取链接的网站 URL(必须包含 http:// 或 https://)
用于过滤 URL 的可选搜索查询(例如,“blog”)
限制返回的 URL 数量
包含特定路径的 Glob 模式(例如,[“/blog/**”])
排除特定路径的 Glob 模式(例如,[“/admin/**”])
id- 地图 IDobject- 对象类型(“map”)url- 网站 URLtotal_urls- 找到的总 URL 数urls- 发现的 URL 数组
与代理一起使用
基本代理示例
创建一个可以抓取网站的代理:代理工作流程示例
构建一个发现和抓取内容的研究工作流程:常见使用场景
研究代理
构建一个可以自主研究主题的代理:多源研究
多源研究
工作流程:
- 用户询问:“研究 AI 趋势”
- 代理使用
createMap发现相关页面 - 代理使用
batchScrape提取内容 - 代理分析并总结发现
- 返回结构化研究报告
竞争对手监控
竞争对手监控
工作流程:
- 安排每日监控
- 使用
scrapeWebsite检查竞争对手页面 - 与之前的数据进行比较
- 对重大变化发出警报
- 生成每周报告
内容聚合
内容聚合
工作流程:
- 使用
createCrawl发现所有博客文章 - 使用
batchScrape提取内容 - 使用 AI 提取关键主题
- 存储在知识库中
- 生成内容日历
电商情报
监控产品和价格:SEO 分析
分析网站结构和内容:专用解析器
Olostep 提供了针对流行网站的预构建解析器。使用parser 参数:
Google 搜索
@olostep/google-search提取:搜索结果、标题、摘要、URLGoogle 地图
@olostep/google-maps提取:商家信息、评论、评分、位置使用解析器
将解析器 ID 添加到parser 参数:
最佳实践
对多个 URL 使用批量处理
对多个 URL 使用批量处理
当抓取超过 3-5 个 URL 时,使用
batchScrape 而不是多个 scrapeWebsite 调用。批量处理:- 更快(并行处理)
- 更具成本效益
- 更易于管理
- 更适合速率限制
设置适当的等待时间
设置适当的等待时间
对于 JavaScript 密集型网站,使用
wait_before_scraping 参数:- 简单网站:0-1000ms
- 动态网站:2000-3000ms
- 重 JavaScript:5000-8000ms
使用专用解析器
使用专用解析器
对于流行网站(Amazon、LinkedIn、Google),使用预构建解析器:
- 自动获取结构化数据
- 提取更可靠
- 无需自定义解析
- 由 Olostep 维护
处理异步操作
处理异步操作
批量、爬取和地图操作是异步的:
- 存储返回的 ID(batch_id、crawl_id、map_id)
- 轮询完成或使用 webhooks
- 为检索设置单独的工作流程
错误处理
错误处理
始终将 API 调用包装在 try-catch 块中:
速率限制
速率限制
注意速率限制:
- 用延迟间隔请求
- 尽可能使用批量处理
- 在 Olostep 仪表板中监控使用情况
- 如有需要升级计划
完整示例
这是一个构建研究代理的完整示例:疑难解答
身份验证失败
身份验证失败
API 未找到
API 未找到
错误:“未找到 API”或“未注册集成”解决方案:
- 确保在创建集成后调用
registerApis() - 验证集成是否已添加到 Mastra 配置中
- 检查集成名称是否为 ‘olostep’
- 在更改后重启 Mastra 服务器
抓取返回空内容
抓取返回空内容
错误:内容字段为空解决方案:
- 增加
wait_before_scraping时间 - 检查网站是否需要登录
- 尝试不同的格式(HTML vs Markdown)
- 验证 URL 是否可访问
- 检查网站是否阻止自动访问
超出速率限制
超出速率限制
错误:“超出速率限制”解决方案:
- 用延迟间隔请求
- 使用批量处理而不是单个抓取
- 升级你的 Olostep 计划
- 在仪表板中检查速率限制
TypeScript 错误
TypeScript 错误
错误:模块未找到或类型错误解决方案:
- 确保安装了
@mastra/core - 检查 TypeScript 版本兼容性
- 验证所有依赖项是否已安装
- 重新构建:
npm run build
定价
Olostep 根据 API 使用情况收费,与 Mastra 独立:- 抓取:按每次抓取收费
- 批次:按批次中的每个 URL 收费
- 爬取:按每个爬取的页面收费
- 地图:按每次地图操作收费
支持
需要 Mastra 集成的帮助?相关资源
抓取 API
了解抓取端点
批次 API
了解批次端点
爬取 API
了解爬取端点
地图 API
了解地图端点
Zapier 集成
使用 Zapier 工作流自动化
LangChain 集成
使用 LangChain 构建 AI 代理
Mastra 网站
Mastra 平台
开始使用
准备好构建具有网页抓取功能的 AI 代理了吗?安装软件包
从 npm 安装 @olostep/mastra-tools