关于 sales-openwebninja
面向销售场景的技能,用于解答 OpenWeb Ninja 公共数据 API 问题。它会了解用户目标与角色,再提供平台建议或将专门需求转给相关销售技能。
主要功能
- 01引导收集需求背景
- 02提供 API 专项平台指导
- 03转交给相关销售技能
- 04联系人与企业数据流程
- 05说明用量限制与集成注意事项
适用场景
- 01选择联系人发现 API
- 02构建本地企业潜客名单
- 03用网页搜索规划竞品研究
- 04了解订阅与请求限制
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ sales-skills/ sales --skill sales-openwebninja安装后在 Claude Code 中输入/sales-openwebninja确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/learnings.mdopenwebninja-api-reference.mdplatform-guide.md详细介绍
OpenWeb Ninja 平台帮助
帮助用户解答 OpenWeb Ninja 平台相关问题——涵盖 Website Contacts Scraper 和 Email Search,以及 Local Business Data、Real-Time Web Search、JSearch、Product Data APIs、Web Unblocker 等。OpenWeb Ninja 是一家总部位于 Sunnyvale 的实时公共数据 API 服务平台,拥有 30 多个 API、50,000 多名订阅者、每月超过 1T 次请求,并在 G2 上获得 4.8/5 的评分。每个 API 都是独立产品,拥有各自的订阅方案、端点和速率限制,可通过 app.openwebninja.com 门户或 RapidAPI 市场使用。
第 1 步——收集背景信息
如果 references/learnings.md 存在,请先阅读以了解积累的知识。
询问用户:
-
你需要 OpenWeb Ninja 哪方面的帮助?
- A)Website Contacts Scraper——从任意网站域名提取电子邮件地址、电话号码和社交链接
- B)Email Search——通过搜索查询查找公开可用的电子邮件地址
- C)Local Business Data——搜索 Google Maps 商家,获取 40 多个字段(电话、网站、评分、评论、营业时间、电子邮件、社交链接)
- D)Social Links Search——查找公司或个人的社交媒体资料
- E)Real-Time Web Search——Google SERP 结果(自然搜索结果、AI Overviews、AI Mode、视频、地点、新闻、知识图谱)
- F)JSearch——职位发布聚合器(LinkedIn、Indeed、Glassdoor、ZipRecruiter——超过 2 亿条职位信息)
- G)Product Data APIs——Amazon、eBay、Walmart、Costco 商品数据(超过 350 亿条商品信息)
- H)Web Unblocker——通过轮换代理获取任意网站的渲染后 HTML
- I)Finance Data——实时股票、加密货币和外汇数据
- J)AI/LLM APIs——支持网页访问的 Google AI Mode、Gemini、ChatGPT、Copilot
- K)其他 API——Zillow、Yelp、Trustpilot、Events、Waze、Local Rank Tracker、Books、Forums、Shorts、Image Search、News
- L)账户/账单——方案、定价、API 订阅
- M)其他——请描述
-
你的职位是什么?
- A)销售/SDR/BDR
- B)RevOps/销售运营
- C)开发者/工程师
- D)增长/营销
- E)招聘人员/人才招募
- F)其他
-
你想实现什么目标?(描述你的具体目标或问题)
如果用户的请求已经提供了大部分背景信息,请直接跳到相关步骤。 根据合理假设(明确说明)尽力先给出答案,然后只在最后询问最关键的 1 到 2 个澄清问题——不要等到收集完所有背景信息后才作答。
注意:如果用户需要专门技能,请简要说明原因,并将其引导至相应技能。
第 2 步——转接或直接回答
如果请求与某项专门技能相关,请转接:
- 跨平台数据补充策略/多工具数据补充 ->
/sales-enrich - 潜在客户名单构建策略 ->
/sales-prospect-list - 通过中间件将 OpenWeb Ninja 连接到其他工具 ->
/sales-integration - Lobstr 相关问题 ->
/sales-lobstr - Outscraper 相关问题 ->
/sales-outscraper - Apollo 相关问题 ->
/sales-apollo
否则,根据下方参考资料中的平台知识直接回答。
第 3 步——OpenWeb Ninja 平台参考资料
阅读 references/platform-guide.md,了解详细的模块文档、定价、集成和数据模型。
你无需再了解平台指南的详细内容——请专注于用户的具体情况。
第 4 步 — 可执行指南
根据用户的具体问题:
-
从目标公司网站列表中提取联系人:
- 使用 Website Contacts Scraper API,针对每个目标域名提取电子邮件地址、电话号码和社交媒体链接
- 预计每个域名的响应时间为 0.5-3 秒;对于大型列表,请批量发送请求并遵守速率限制(Free 为 1 次/秒,Mega 最高为 30 次/秒)
- 结果取决于网站公开的信息:有些域名会返回多个电子邮件地址和电话号码,另一些可能没有任何结果
- 对于没有返回联系人的域名,可使用 Email Search API 补充查询——按公司名称搜索,并可选择使用域名筛选
- 使用 Social Links Search 为找到的联系人补充 LinkedIn、Twitter 和 Facebook 个人资料
- 通过自定义 API 集成将结果导入 CRM——OpenWeb Ninja 没有原生 CRM 连接器,因此请使用中间件(Zapier、Make、n8n)或自行构建直接集成
- 外联前使用独立的电子邮件验证服务核验找到的电子邮件地址(OpenWeb Ninja 不包含电子邮件验证功能)
-
从 Google Maps 构建本地企业潜在客户名单:
- 使用 Local Business Data API 按类别和地点搜索(例如,“奥斯汀,TX 的牙医”)
- 每个返回的商家都计为单独一次请求——返回 20 家商家的搜索会从配额中扣除 20 次请求
- 每家商家都会返回 40 多个字段:电话、网站、电子邮件地址、地址、评分、评论数量、营业时间和社交媒体链接
- 按地理半径查询时使用附近搜索;需要覆盖更大区域时使用批量搜索
- 提取高优先级目标的评论,以了解其痛点并个性化外联内容
- 使用 Website Contacts Scraper 丰富结果,补充 Google Maps 上未列出的电子邮件地址
- 将结果导出到电子表格或 CRM——编写简单脚本,或使用中间件来整理并推送数据
-
通过网页搜索 API 开展竞争情报分析:
- 使用 Real-Time Web Search API 搜索竞争对手名称、产品名称或行业关键词
- 每次查询最多可获取 500 条结果;按地区和语言进行本地化,以获取特定市场的情报
- 解析 SERP 功能:AI Overviews 用于概述竞争定位,People Also Ask 用于了解买家的常见问题,知识图谱用于获取公司信息
- 监控新闻结果,了解竞争对手的公告、融资和产品发布
- 通过 JSearch 跟踪招聘信息,识别竞争对手的招聘模式(扩张信号、技术栈变化)
- 结合 Product Data APIs 获取电商竞争对手的定价情报
- 通过安排定期 API 调用并跟踪变化,设置自动监控
注意事项
根据调研整理的最佳建议——请仔细核对,尤其是关于各 API 订阅和定价的信息,这些信息可能已发生变化。
-
每个 API 都需要单独订阅——使用多个 API 会产生叠加费用。 OpenWeb Ninja 并非单一平台订阅。如果需要 Website Contacts Scraper、Local Business Data 和 Email Search,就需要分别订阅这三项服务。三者都订阅 Pro 的费用是 $75/月,而不是 $25/月。订阅前请确认实际需要哪些 API;对于不常用的 API,可考虑按需付费($0.001-0.005/次请求)。
-
免费套餐额度非常有限(50-500 次请求),且因 API 而异——仅适用于评估。 各 API 的额度不同:每月 50 次(Website Contacts、Email Search、Social Links)、每月 100 次(Real-Time Web Search、Web Unblocker)、每月 200 次(JSearch)、每月 500 次(Local Business Data)。免费套餐的速率限制也按 API 分别设置——有些为 1 次请求/秒,另一些为每小时 1,000 次(Email Search、Local Business Data、JSearch)。不适合用于生产环境。测试前,请务必确认相应 API 的免费套餐额度。
-
速率限制因套餐和 API 而异——不要假设限制统一。 某个 API 的 Pro 套餐可能允许每秒 5 个请求,而另一个 API 的 Pro 套餐可能允许每秒 10 个请求。如果要集成多个 API,就需要分别跟踪各 API 的速率限制。超出速率限制会返回错误,而不会将请求排队。
-
Local Business Data 按返回的商家数量计数,而非按搜索查询计数。 一次返回 20 家商家的搜索会从配额中消耗 20 个请求。大范围搜索或宽泛的类别可能很快耗尽月度配额。使用具体类别和精确的地理筛选条件来控制请求消耗。在批量操作期间密切监控用量仪表板。
-
Web Unblocker 返回原始 HTML,而非结构化数据——必须自行解析。 与返回结构化 JSON 的其他 API 不同,Web Unblocker 会提供页面完整渲染后的 HTML。你需要编写自己的解析逻辑(BeautifulSoup、Cheerio 等)来提取有用数据。只要结构化 API(Local Business Data、Product Data 等)能满足目标数据需求,就应优先使用;Web Unblocker 是针对专业 API 未覆盖网站的备用方案。
-
RapidAPI 与直接门户的定价可能不同——订阅前请比较。 OpenWeb Ninja API 既可通过 app.openwebninja.com 门户使用,也可通过 RapidAPI marketplace 使用。两个平台的定价、速率限制和套餐等级可能并不一致。如果你对成本敏感,请在决定前比较两者的定价。身份验证方式因访问途径而异:直接门户使用
x-api-key: YOUR_API_KEY请求头访问https://api.openwebninja.com/{api-name}/...(已于 2026-06-13 验证),而 RapidAPI 使用其专属的X-RapidAPI-Key请求头和 RapidAPI 主机路由。 -
没有原生 CRM 集成——OpenWeb Ninja 仅提供 API。 与内置 HubSpot/Salesforce 连接器的平台不同,使用 OpenWeb Ninja 需要自定义集成工作,才能将数据推送到 CRM、电子表格或其他工具。可以使用中间件平台(Zapier、Make、n8n),也可以构建直接 API 集成。评估总体采用成本时,请将这部分开发工作考虑在内。
-
Email Search 仅返回公开索引的电子邮件地址——这些地址未经验证。 Email Search API 会发现网络上公开可用的电子邮件地址。这些地址未经投递能力验证,可能已经过时,也可能是基于角色的地址(info@、support@)。用于外联之前,务必先通过单独的验证服务核验发现的电子邮件地址。与 Website Contacts Scraper 结合使用可获得更全面的覆盖。
-
不同端点的响应时间差异很大——请据此规划集成。 Website Contacts Scraper 每个请求耗时 0.5-3 秒,Email Search 耗时 1-2 秒,但 Web Unblocker(启用 JS 渲染时)和 Local Business Data(获取完整详细信息时)可能耗时更长。对于高吞吐量管道,应实现异步处理和排队,而不是采用同步请求链。超时设置应留有充足余量(10+ 秒),以应对时间波动。
- 自我完善:如果发现此处未涵盖的内容,请附上今天的日期并添加到
references/learnings.md。
步骤 5 — 相关技能
/sales-enrich— 跨平台数据丰富策略(多工具丰富工作流、瀑布式数据丰富)/sales-prospect-list— 潜在客户名单构建策略和最佳实践/sales-integration— 将 OpenWeb Ninja 连接到 CRM、自动化工具或其他平台/sales-lobstr— Lobstr 平台帮助(网页抓取和数据提取)/sales-outscraper— Outscraper 平台帮助(Google Maps 抓取和商家数据)/sales-apollo— Apollo 平台帮助(B2B 数据库和销售互动)/sales-do— 不确定该使用哪项技能?路由器会将任何销售目标匹配到合适的技能。安装:npx skills add sales-skills/sales --skill sales-do
示例
示例 1:从 Google Maps 构建潜在客户名单,用于本地销售拓展
用户说:“我需要查找亚利桑那州凤凰城所有的管道维修公司及其电话号码和网站,供我的销售团队致电。” 技能执行:
- 使用 Local Business Data API 搜索亚利桑那州凤凰城的“管道维修”企业
- 说明返回的每家企业都会计为一次单独的请求——搜索结果若有 50 家管道维修公司,就会占用月度配额中的 50 次请求
- 从每家企业中提取关键字段:企业名称、电话、网站、地址、评分、评价数量和营业时间
- 建议按评分(例如,3 星以上)和评价数量(例如,10 条以上评价)筛选,重点联系经营成熟、值得开发的企业
- 对每家企业的网站使用 Website Contacts Scraper,补充查找 Google Maps 上未列出的电子邮件地址和社交链接
- 建议通过简单脚本或中间件导出到电子表格或 CRM——目前没有原生 CRM 集成
- 说明预算影响:50 家企业 + 50 次网站联系人抓取 = 两个 API 共 100 次请求 结果:用户获得一份结构化的凤凰城管道维修公司名单,包含电话、网站、电子邮件、评分和评价数据,可用于销售拓展
示例 2:从网站获取联系信息,丰富目标客户名单
用户说:“我有 200 个公司域名,想抓取电子邮件地址和社交媒体链接。该如何设置?” 技能执行:
- 建议使用 Website Contacts Scraper API 批量提取域名联系人——每个域名耗时 0.5-3 秒,200 个域名总计约需 2-10 分钟
- 检查速率限制要求:免费套餐仅允许每秒 1 次(200 个域名至少约需 3.5 分钟),Pro 套餐允许每秒 5-10 次(200 个域名约需 20-40 秒)
- 建议使用 Pro 套餐(每月 $25,10,000-20,000 次请求),这是处理 200 个域名并留有重试和补充查询余量的最低可行套餐
- 提供代码模式:遍历域名,逐一调用 API,收集电子邮件、电话和社交链接,并处理错误和空响应
- 对于未返回联系人的域名,改用 Email Search API,通过公司名称进行查询——这需要单独订阅 API
- 建议合并结果:合并 Website Contacts Scraper 和 Email Search 的结果,并按电子邮件地址去重
- 注意,发现的电子邮件尚未经过验证——建议在联系对方前使用电子邮件验证服务进行验证 结果:用户获得了丰富 200 个域名联系人数据的计划和代码方案,并明确了解预算预期和备用策略
示例 3:监控竞争对手的招聘信息,捕捉销售线索
用户说:“我想追踪竞争对手公司何时发布新的工程类职位——这可能意味着他们正在开发新产品,我们可以针对这些产品推介方案。” 技能执行:
- 使用 JSearch API 按公司名称搜索工程类职位,并汇总 LinkedIn、Indeed、Glassdoor、ZipRecruiter 的职位信息(超过 2 亿条)
- 设置定期搜索模式:每周查询每家竞争对手,并将结果与上周进行比较,以识别新发布的职位
- 分析职位描述中的技术关键词、团队规模指标和产品领域信息
- 使用 Real-Time Web Search API 补充查询有关竞争对手产品方向的新闻稿、博客文章或新闻报道
- 使用 Job Salary Data API 了解新招聘人员的资历级别和预算水平
- 建议将结果存入数据库或电子表格,并标记异常情况(招聘突然激增、提及新的技术栈、开设新办公地点)
- 注意,这需要分别订阅两个 API(JSearch + Real-Time Web Search)——请相应规划预算 结果:用户获得了一个自动化的竞争情报工作流,利用招聘信息作为产品和销售策略的领先指标
故障排除
Website Contacts Scraper 对知名公司的查询返回空结果
症状:调用 Website Contacts Scraper 查询知名公司的域名时,没有返回电子邮件地址、电话号码或社交链接。 原因:公司可能没有在网站上显著展示联系信息,可能使用 JavaScript 渲染的联系表单而不是纯文本电子邮件地址,可能使用混淆的电子邮件格式(例如“name [at] company [dot] com”),或者最近重新设计了网站。一些公司会刻意避免在公开页面上列出直接联系方式。 解决方案:尝试使用 Email Search API 作为后备方案——它搜索更广泛的网络,而不仅仅是公司网站。检查该域名是否重定向到其他 URL(例如 www 与非 www,或母公司域名)。尝试使用 Social Links Search 查找其社交媒体资料,其中可能列有联系信息。对于大量使用 JavaScript 的公司,Web Unblocker API 可能会捕获 Website Contacts Scraper 未能获取的内容,不过你需要自行解析 HTML。
Local Business Data 返回重复或过时的商家信息
症状:搜索结果中,同一商家有重复条目(地点 ID 不同),或包含已停业的商家。 原因:当商家有多个条目时(例如不同部门的条目、新旧条目),Google Maps 数据可能会出现重复项。已停业的商家可能仍保留在 Google Maps 数据中,并标记为“永久停业”;需要在响应中检查此状态。 解决方案:根据电话号码或地址对结果去重,而不仅仅依据商家名称(不同加盟店可能共用名称)。筛除状态字段标记为“永久停业”或“暂时停业”的商家。通过商家网站(使用 Website Contacts Scraper)交叉核对,确认其是否仍在营业。对于高价值潜在客户名单,在批量联系前手动核实部分结果。
多个 API 均出现速率限制错误
症状:在管道中调用多个 OpenWeb Ninja API 时,收到 429(请求过多)错误。 原因:每个 API 都有独立的速率限制,但如果你在同一集成中连续快速调用多个 API,可能会超出其中一个或多个 API 的限制。速率限制按 API 和套餐分别计算——Free 为 1 次/秒,Pro 为 5-10 次/秒,依此类推。 解决方案:在代码中按 API 实施速率限制——分别跟踪每个 API 的请求时间戳。收到 429 响应时,加入带抖动的指数退避。考虑升级导致管道瓶颈的特定 API,而不是升级所有 API。对于涉及多个 API 的复杂管道,使用基于队列的架构,以遵守每个 API 各自的速率限制。