测试
10,000 个网页
US$3.75
US$0.38/千页
- 用你的真实 URL 试一试
- 与最大积分包使用同一个 API
- 积分永不过期
用例 · 检索增强生成
检索的效果取决于你放进索引的内容。带标题、元数据和来源 URL 的干净 Markdown 能给出更好的分块、更少的 token 浪费,以及能引用其来源页面的回答。
快速回答
如何将网页导入 RAG 管道?
把每个页面读取为其正文的 Markdown,沿标题切分,为每个分块附上来源 URL 和标题,然后嵌入并存储。WebReaderAPI 负责读取:每页一个请求,或对整个站点(最多 10,000 个页面)运行一个整站抓取 (crawl) 任务,自 2026 年 10 月起每页一个积分,价格从 US$0.07/千页 起。遵循 robots.txt。无需 KYC;加密货币支付。
| 整站 | POST https://webreaderapi.com/api/v1/crawl:每个任务抓取一个网站,最多 10,000 页,遵循其 sitemap、robots.txt 和 Crawl-delay |
|---|---|
| URL 列表 | POST https://webreaderapi.com/api/v1/batch:每个批量任务最多 100 个 URL |
| 按页 | 正文的 Markdown,包含标题、作者、日期、语言、字数 |
| 最大 20 MB、100 页的 PDF 文件可转换为 Markdown,每 10 页(不足 10 页按 10 页计)1 积分 | |
| 计费 | 1 积分 = 读取 1 个页面且无需浏览器;当页面需要浏览器渲染 JavaScript 时为 2 积分。失败的请求,或被网站 robots.txt 拒绝的请求,不扣费 |
| 价格 | US$14.25 个积分,50,000 个网页;积分永不过期 |
由模板文字构成的分块检索效果很差。当页面切分时仍保留菜单、Cookie 提示文字和页脚,许多分块包含相同的导航词,向量搜索会在不相关的问题中返回它们。正文提取会在你嵌入之前去掉这些噪声。
标题同样重要。以 ## Refund policy 开头的分块会带着自己的主题,因此嵌入和之后阅读它的模型都知道它在讲什么。纯文本会丢失这个信号;原始 HTML 则把它藏在标记下面。
五个步骤,无论你用什么向量数据库:
main_content=true;列表页使用 false。#、## 和 ### 切分,再把过长的章节按你的大小上限切分,并保留少量重叠。url、title、published_at 和标题路径与每个块一起存储,这样回答能引用来源。lastmod 发生变化的页面,并删除现在返回错误的页面对应的块。import os
import re
import requests
API = "https://webreaderapi.com/api/v1/read"
HEADERS = {"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]}
URLS = [
"https://docs.example.com/getting-started",
"https://docs.example.com/billing",
]
def chunks_for(url, max_len=2000):
page = requests.get(API, headers=HEADERS, params={"url": url}, timeout=90).json()
if "markdown" not in page:
return []
out = []
for section in re.split(r"\n(?=#{1,3} )", page["markdown"]):
section = section.strip()
heading = section.splitlines()[0] if section else ""
for start in range(0, len(section), max_len):
out.append({
"text": section[start:start + max_len],
"url": page.get("final_url", url),
"title": page.get("title"),
"heading": heading,
})
return out
all_chunks = [c for u in URLS for c in chunks_for(u)]
print(len(all_chunks), "chunks ready to embed")
构建时每页消耗一个积分,需要浏览器的页面两个。刷新只对重新读取的页面计费。以下三个示例按 2026 年 10 月的价格计算:
嵌入和存储由你自己的服务商计费,不包含在内。
不能通过 WebReaderAPI。对我们的爬虫或对所有机器人被 robots.txt 禁止的页面会被跳过,且不计费;声明了 Content-Signal: ai-input=no 的站点不会为你读取。对于你自己的站点或阻止机器人的合作方站点,请让站长在 robots.txt 中允许 WebReaderAPI;我们的爬虫页面列出了需要添加的行。
这对你的用户也很重要。一个引用来源的 RAG 助手,在这些来源同意被读取时更有用。
计算构建索引所需的页面数,加上每月刷新量,选择能覆盖几个月的套餐。积分永不过期。
10,000 个网页
US$3.75
US$0.38/千页
50,000 个网页
US$14.25
US$0.28/千页
100,000 个网页
US$21.75
US$0.22/千页
500,000 个网页
US$50
US$0.10/千页
所有套餐均包含: 正文提取 · 需要时渲染 JavaScript · 失败和被拒绝的页面不收费 · 积分永不过期
先按标题切分,再把超过约 500 到 1,000 token 的章节切分,并保留少量重叠。基于标题的块各自只含一个主题,通常比覆盖整页的固定大小窗口检索效果更好。
不会。WebReaderAPI 读取页面并返回带元数据的 Markdown。你用自己选择的模型进行嵌入,并存入自己的向量数据库;LangChain 和 LlamaIndex 页面展示了这两者。
只重新读取发生变化的页面。大多数 sitemap 为每个 URL 带有 lastmod 日期;把它与你上次读取的时间比较,将变化的 URL 作为批次发送。现在失败的页面应从索引中移除。
可以。整站抓取会在同一域名下读取 PDF 链接,并执行相同的 robots.txt 检查。最大 20 MB、100 页的 PDF 文件可转换为 Markdown,每 10 页(不足 10 页按 10 页计)1 积分。
低至 US$0.07/千页 · 无需 KYC
获取 API 密钥