无需 KYC — 无身份证、无自拍、无证件。加密货币支付:BTC, USDT, USDC, ETH, SOL, LTC
语言: 简体中文
获取 API 密钥

用例 · 检索增强生成

用于 RAG 的网页:将站点转为干净、可分块的 Markdown

检索的效果取决于你放进索引的内容。带标题、元数据和来源 URL 的干净 Markdown 能给出更好的分块、更少的 token 浪费,以及能引用其来源页面的回答。

最后更新:

快速回答

如何将网页导入 RAG 管道?

把每个页面读取为其正文的 Markdown,沿标题切分,为每个分块附上来源 URL 和标题,然后嵌入并存储。WebReaderAPI 负责读取:每页一个请求,或对整个站点(最多 10,000 个页面)运行一个整站抓取 (crawl) 任务,自 2026 年 10 月起每页一个积分,价格从 US$0.07/千页 起。遵循 robots.txt。无需 KYC;加密货币支付。

使用 WebReaderAPI 进行 RAG 导入

整站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,包含标题、作者、日期、语言、字数
PDF最大 20 MB、100 页的 PDF 文件可转换为 Markdown,每 10 页(不足 10 页按 10 页计)1 积分
计费1 积分 = 读取 1 个页面且无需浏览器;当页面需要浏览器渲染 JavaScript 时为 2 积分。失败的请求,或被网站 robots.txt 拒绝的请求,不扣费
价格US$14.25 个积分,50,000 个网页;积分永不过期

为什么干净的 Markdown 能带来更好的检索效果?

由模板文字构成的分块检索效果很差。当页面切分时仍保留菜单、Cookie 提示文字和页脚,许多分块包含相同的导航词,向量搜索会在不相关的问题中返回它们。正文提取会在你嵌入之前去掉这些噪声。

标题同样重要。以 ## Refund policy 开头的分块会带着自己的主题,因此嵌入和之后阅读它的模型都知道它在讲什么。纯文本会丢失这个信号;原始 HTML 则把它藏在标记下面。

导入管道长什么样?

五个步骤,无论你用什么向量数据库:

  1. 收集 URL。 抓取整站,或把你已有的 URL 列表作为批次发送。
  2. 读作 Markdown。 文章和文档保留 main_content=true;列表页使用 false。
  3. 按标题分块。 按 #、## 和 ### 切分,再把过长的章节按你的大小上限切分,并保留少量重叠。
  4. 附加元数据。 把 url、title、published_at 和标题路径与每个块一起存储,这样回答能引用来源。
  5. 刷新。 重新读取 sitemap 中 lastmod 发生变化的页面,并删除现在返回错误的页面对应的块。
Python:读取页面并按来源切分成块
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 月的价格计算:

  • 某产品的帮助中心共 800 页,每月刷新变化的页面(约 10%):一次性 800 积分,之后每月约 80。10,000 个网页(US$3.75)可用数年。
  • 十个文档站点各 2,000 页,每周按 5% 刷新:20,000 积分,之后每月约 4,000。50,000 个网页(US$14.25)可覆盖构建和七个月的刷新。
  • 一个新闻存档共 300,000 篇文章,从不变化:一次性 300,000 积分,可放在 500,000 个网页(US$50)中。

嵌入和存储由你自己的服务商计费,不包含在内。

我可以索引那些不希望被索引的站点吗?

不能通过 WebReaderAPI。对我们的爬虫或对所有机器人被 robots.txt 禁止的页面会被跳过,且不计费;声明了 Content-Signal: ai-input=no 的站点不会为你读取。对于你自己的站点或阻止机器人的合作方站点,请让站长在 robots.txt 中允许 WebReaderAPI;我们的爬虫页面列出了需要添加的行。

这对你的用户也很重要。一个引用来源的 RAG 助手,在这些来源同意被读取时更有用。

哪个套餐适合 RAG 项目?

计算构建索引所需的页面数,加上每月刷新量,选择能覆盖几个月的套餐。积分永不过期。

测试

10,000 个网页

US$3.75

US$0.38/千页

  • 用你的真实 URL 试一试
  • 与最大积分包使用同一个 API
  • 积分永不过期
选择 10,000 个网页

入门版

50,000 个网页

US$14.25

US$0.28/千页

  • AI 智能体或 RAG 原型
  • 抓取文档站点
  • 积分永不过期
选择 50,000 个网页

构建

100,000 个网页

US$21.75

US$0.22/千页

  • 生产级智能体和 RAG 流水线
  • 批量和整站抓取任务
  • 积分永不过期
选择 100,000 个网页

扩展

500,000 个网页

US$50

US$0.10/千页

  • 大型知识库
  • 可按需提高并发
  • 积分永不过期
选择 500,000 个网页

所有套餐均包含: 正文提取 · 需要时渲染 JavaScript · 失败和被拒绝的页面不收费 · 积分永不过期

RAG 摄取:常见问题

我应该使用多大的块?

先按标题切分,再把超过约 500 到 1,000 token 的章节切分,并保留少量重叠。基于标题的块各自只含一个主题,通常比覆盖整页的固定大小窗口检索效果更好。

WebReaderAPI 会创建嵌入或存储向量吗?

不会。WebReaderAPI 读取页面并返回带元数据的 Markdown。你用自己选择的模型进行嵌入,并存入自己的向量数据库;LangChain 和 LlamaIndex 页面展示了这两者。

如何让索引保持最新?

只重新读取发生变化的页面。大多数 sitemap 为每个 URL 带有 lastmod 日期;把它与你上次读取的时间比较,将变化的 URL 作为批次发送。现在失败的页面应从索引中移除。

我可以包含同一站点的 PDF 吗?

可以。整站抓取会在同一域名下读取 PDF 链接,并执行相同的 robots.txt 检查。最大 20 MB、100 页的 PDF 文件可转换为 Markdown,每 10 页(不足 10 页按 10 页计)1 积分。

低至 US$0.07/千页 · 无需 KYC

获取 API 密钥