🥳加入无抓取社区领取您的免费试用,访问我们强大的网页抓取工具包!
返回博客

如何在 n8n 上使用 Scrapeless 构建一个 AI 驱动的管道?

Emily Chen
Emily Chen

Advanced Data Extraction Specialist

19-May-2025

引言

在当今的数据驱动环境中,组织需要有效的方式来提取、处理和分析网络内容。传统的网页抓取面临诸多挑战:反机器人保护、复杂的JavaScript渲染和持续维护的需要。此外,理解非结构化网络数据需要复杂的处理。

本指南演示如何使用n8n工作流自动化、Scrapeless网页抓取、Claude AI进行智能提取以及Qdrant向量数据库进行语义存储来构建一个完整的网络数据管道。无论您是在构建知识库、进行市场研究,还是开发AI助手,这个工作流都提供了强大的基础。

您将构建的内容

我们的n8n工作流结合了几种尖端技术:

  • Scrapeless网络解锁器:具有JavaScript渲染的高级网页抓取
  • Claude 3.7 Sonnet:AI驱动的数据提取和结构化
  • Ollama嵌入:本地向量嵌入生成
  • Qdrant向量数据库:语义存储和检索
  • 通知系统:通过Webhooks进行实时监控

这个端到端的管道将混乱的网页数据转化为结构化、向量化的信息,准备进行语义搜索和AI应用。
使用n8n、Scrapeless和Claude构建AI驱动的网络数据管道

安装与设置

安装n8n

n8n需要Node.js v18、v20或v22。如果您遇到版本兼容性问题:

Copy
# 检查您的Node.js版本
node -v

# 如果您有一个更新的、不受支持的版本(例如v23+),请安装nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash
# 或者对于Windows,使用NVM for Windows安装程序

# 安装兼容的Node.js版本
nvm install 20

# 使用已安装的版本
nvm use 20

# 全局安装n8n
npm install n8n -g

# 运行n8n
n8n

您的n8n实例现在应该在http://localhost:5678可用。

设置Claude API

  1. 访问Anthropic控制台并创建一个帐户
  2. 导航到API密钥部分
  3. 点击“创建密钥”并设置适当的权限
  4. 复制您的API密钥,以在n8n工作流中使用(在AI数据检查器、Claude数据提取器和Claude AI代理中)
设置Claude API

设置Scrapeless

  1. 访问Scrapeless并创建一个帐户
  2. 在您的仪表板中导航到通用抓取API部分 https://app.scrapeless.com/exemple/overview
设置Scrapeless
  1. 复制您的令牌以在n8n工作流中使用
复制您的令牌以在n8n工作流中使用

您可以使用此curl命令自定义Scrapeless网页抓取请求,并将其直接导入n8n中的HTTP请求节点:

Copy
curl -X POST "https://api.scrapeless.com/api/v1/unlocker/request" \
  -H "Content-Type: application/json" \
  -H "x-api-token: scrapeless_api_key" \
  -d '{
    "actor": "unlocker.webunlocker",
    "proxy": {
      "country": "ANY"
    },
    "input": {
      "url": "https://www.scrapeless.com",
      "method": "GET",
      "redirect": true,
      "js_render": true,
      "js_instructions": [{"wait":100}],
      "block": {
        "resources": ["image","font","script"],
        "urls": ["https://example.com"]
      }
    }
  }'
您可以自定义Scrapeless网页抓取请求

使用Docker安装Qdrant

Copy
# 拉取Qdrant镜像
docker pull qdrant/qdrant

# 运行Qdrant容器并保持数据持久性
docker run -d \
  --name qdrant-server \
  -p 6333:6333 \
  -p 6334:6334 \
  -v $(pwd)/qdrant_storage:/qdrant/storage \
  qdrant/qdrant

验证Qdrant是否在运行:

Copy
curl http://localhost:6333/healthz

安装Ollama

macOS:

Copy
brew install ollama

Linux:

Copy
curl -fsSL https://ollama.com/install.sh | sh

Windows:从Ollama的网站下载并安装。

启动Ollama服务器:

Copy
ollama serve

安装所需的嵌入模型:

Copy
ollama pull all-minilm

验证模型安装:

Copy
ollama list

设置n8n工作流

工作流概述

我们的工作流由以下关键组件组成:

  1. 手动/定时触发器:启动工作流
  2. 集合检查:验证Qdrant集合是否存在
  3. URL配置:设置目标URL和参数
  4. Scrapeless网页请求:提取HTML内容
  5. Claude数据提取:处理和结构化数据
  6. Ollama 嵌入:生成向量嵌入
  7. Qdrant 存储:保存向量和元数据
  8. 通知:通过 webhook 发送状态更新

步骤 1:配置工作流触发器和集合检查

开始时添加一个手动触发节点,然后添加一个 HTTP 请求节点来检查您的 Qdrant 集合是否存在。您可以在这一步自定义集合名称 - 如果集合不存在,工作流将自动创建该集合。

重要提示: 如果您想使用与默认 "hacker-news" 不同的集合名称,请确保在所有引用 Qdrant 的节点中一致地更改它。

步骤 2:配置 Scrapeless 网页请求

添加一个 HTTP 请求节点用于 Scrapeless 网络抓取。使用之前提供的 curl 命令配置该节点,将 YOUR_API_TOKEN 替换为您的实际 Scrapeless API 令牌。

您可以在 Scrapeless Web Unlocker 中配置更高级的抓取参数。

步骤 3:Claude 数据提取

添加一个节点来使用 Claude 处理 HTML 内容。您需要提供您的 Claude API 密钥进行身份验证。Claude 提取器分析 HTML 内容,并以 JSON 格式返回结构化数据。

步骤 4:格式化 Claude 输出

该节点获取 Claude 的响应,提取相关信息并适当格式化,以便进行向量化。

步骤 5:Ollama 嵌入生成

该节点将结构化文本发送到 Ollama 进行嵌入生成。确保您的 Ollama 服务器正在运行,并且已安装 all-minilm 模型。

步骤 6:Qdrant 向量存储

该节点将生成的嵌入存储在您的 Qdrant 集合中,并附带相关的元数据。

步骤 7:通知系统

最后一个节点通过您配置的 webhook 发送工作流执行状态的通知。

排除常见问题

n8n Node.js 版本问题

如果您看到类似以下错误:

Copy
您的 Node.js 版本 X 目前不受 n8n 支持。  
请使用 Node.js v18.17.0(推荐)、v20 或 v22!  

请通过安装 nvm 并使用设置部分所述的兼容 Node.js 版本来修复。

Scrapeless API 连接问题

  • 验证您的 API 令牌是否正确
  • 检查是否超过 API 限速
  • 确保 URL 格式正确

Ollama 嵌入错误

常见错误:connect ECONNREFUSED ::1:11434

修复:

  • 确保 Ollama 正在运行:ollama serve
  • 验证模型是否已安装:ollama pull all-minilm
  • 使用直接 IP(127.0.0.1)而不是 localhost
  • 检查是否有其他进程使用端口 11434

高级使用场景

批处理多个 URL

要在一次工作流执行中处理多个 URL:

  1. 使用分批节点以并行方式处理 URL
  2. 为每个批次配置适当的错误处理
  3. 使用合并节点来组合结果

定时数据更新

通过定时更新保持您的向量数据库最新:

  1. 用计划节点替换手动触发器
  2. 配置更新频率(日常、每周等)
  3. 使用条件节点仅处理新内容或更改的内容

自定义提取模板

为不同内容类型调整 Claude 的提取:

  1. 为新闻文章、产品页面、文档等创建特定提示
  2. 使用切换节点选择适当的提示
  3. 将提取模板存储为环境变量

结论

该 n8n 工作流创建了一个强大的数据管道,结合了 Scrapeless 网络抓取、Claude AI 提取、向量嵌入和 Qdrant 存储的优势。通过自动化这些复杂过程,您可以专注于使用提取的数据,而不是获取数据的技术挑战。

n8n 的模块化特性使您能够通过额外的处理步骤、与其他系统的集成或自定义逻辑扩展此工作流,以满足您的特定需求。无论您是构建 AI 知识库、进行竞争分析,还是监控网络内容,该工作流都提供了坚实的基础。

在Scrapeless,我们仅访问公开可用的数据,并严格遵循适用的法律、法规和网站隐私政策。本博客中的内容仅供演示之用,不涉及任何非法或侵权活动。我们对使用本博客或第三方链接中的信息不做任何保证,并免除所有责任。在进行任何抓取活动之前,请咨询您的法律顾问,并审查目标网站的服务条款或获取必要的许可。

最受欢迎的文章

目录