跳转到主要内容
全部集成

AI 开发

在 LangChain 中使用 AdsCrawl

将 AdsCrawl 用作 LangChain 应用的浏览器层。通过 LangChain 工具封装 JavaScript SDK,读取实时网页、返回可读的 Markdown,并保留内容对应的来源链接。

能做什么

01

可调用的网页工具

使用 Zod 定义 URL 输入,通过 LangChain 的工具接口提供 read_web_page。

02

实时网页上下文

当任务需要读取指定 URL 时,获取浏览器渲染后的页面文本。

03

可追溯的回答

同时返回 source 与 markdown,让后续链能够引用原始页面。

准备工作

  • 具有 API Key 和可用积分的 AdsCrawl 账号。
  • Node.js 22.22 或更高版本,在服务端或本地开发环境中运行。

接入方式 01

创建 LangChain 工具

将 AdsCrawl 官方 SDK 接入 LangChain 自定义工具接口。首次验证无需配置语言模型。

  1. 安装依赖

    在应用目录中运行以下命令。

    Shell
    npm install adscrawl @langchain/core zod
  2. 配置 API Key

    在服务端环境或本地终端设置变量,用自己的密钥替换占位符,不要将其放入前端构建产物或提交到代码仓库。

    Shell
    export ADSCRAWL_API_KEY="your_adscrawl_api_key"
  3. 保存为 langchain-web.mjs

    工具校验 URL、读取网页,返回包含 source 和 markdown 的 JSON 字符串。示例直接调用工具完成验证。

    JavaScript
    import AdsCrawl from "adscrawl";
    import { tool } from "@langchain/core/tools";
    import { z } from "zod";
    
    const browser = new AdsCrawl({ apiKey: process.env.ADSCRAWL_API_KEY });
    
    export const readWebPage = tool(
      async ({ url }) => {
        const markdown = await browser.markdown({
          url, waitUntil: "domcontentloaded",
        });
        if (!markdown.trim()) throw new Error("The page returned no text");
        return JSON.stringify({ source: url, markdown });
      },
      {
        name: "read_web_page",
        description: "Read a public web page as browser-rendered Markdown, with its source URL.",
        schema: z.object({ url: z.string().url() }),
      },
    );
    
    const result = await readWebPage.invoke({ url: "https://example.com" });
    console.log(JSON.parse(result));
  4. 运行并接入下一步

    预期输出来源链接与标题为 Example Domain 的 Markdown。将 readWebPage 注册到 LangChain Agent 的 tools 列表后,Agent 即可调用它;模型需单独配置,并可要求 Agent 在使用结果时引用 source。

    Shell
    node langchain-web.mjs

用量与限制

  • 本指南定义自定义工具,无需另装 AdsCrawl–LangChain 专用集成包。示例不包含搜索、多页爬取或向量数据库。
  • 每次页面请求消耗 AdsCrawl 积分。示例读取单个公开 URL;动态页面可能需要调整 waitUntil,或增加浏览器交互步骤。
  • 保留内容的来源 URL。处理长页面时,在传入模型前选择合适的分块方式或上下文长度策略。
查看价格与积分换算

继续阅读

LangChain 官方文档AdsCrawl JavaScript / TypeScript SDK