当前位置: 首页 > news >正文

基于AI的Web数据管道,使用n8n、Scrapeless和Claude

引言

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

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

您将构建的内容

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

  • Scrapeless 网络解锁器:先进的网络抓取与 JavaScript 渲染
  • Claude 3.7 诗集:人工智能驱动的数据提取和结构化
  • Ollama 嵌入:本地向量嵌入生成
  • Qdrant 向量数据库:语义存储和检索
  • 通知系统:通过网络钩子实现实时监控

这个端到端的管道将凌乱的网络数据转化为结构化、向量化的信息,准备进行语义搜索和 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 部分 Effortless Web Scraping Toolkit - Scrapeless

设置 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. 通知:通过网络钩子发送状态更新

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

首先添加一个手动触发节点,然后添加一个 HTTP 请求节点以检查您的 Qdrant 集合是否存在。您可以在此初始步骤中自定义集合名称 - 如果集合不存在,工作流将自动创建它。

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

步骤 2:配置 Scrapeless 网络请求

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

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

步骤 3:Claude 数据提取

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

步骤 4:格式化 Claude 输出

此节点获取 Claude 的响应,并通过提取相关信息并适当地格式化来为向量化做准备。

步骤 5:生成 Ollama 嵌入

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

步骤 6:Qdrant 向量存储

此节点将生成的嵌入存储在您的 Qdrant 集合中,连同相关的元数据。

步骤 7:通知系统

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

常见问题排查

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 知识库、进行竞争分析,还是监控网络内容,这个工作流都提供了坚实的基础。

相关文章:

  • mybatis-plus实操
  • 【Nextcloud】使用 LNMP 架构搭建私有云存储:Nextcloud 实战指南
  • TDesign AI Chat - Vue3.x 可用!腾讯出品的 AIGC 交互对话组件,免费开源、包含设计资源
  • MyBatis入门指南
  • Java微服务架构实战:Spring Boot与Spring Cloud的深度整合
  • 代码审查服务费用受哪些因素影响?如何确定合理报价?
  • React 个人笔记 Hooks编程
  • C#接口的setter或getter的访问性限制
  • 论文阅读--Logical quantum processor based on reconfigurable atom arrays
  • Model 速通系列(一)nanoGPT
  • 智能开发工具PhpStorm v2025.1——增强AI辅助编码功能
  • uniapp打包H5,输入网址空白情况
  • 设计模式的原理及深入解析
  • Cursor日常配置指南
  • 【C++进阶篇】AVL树的实现(赋源码)
  • 元注解(Meta-Annotations)详解
  • 双条件拆分工作表,一键生成独立工作簿-Excel易用宝
  • Python将Excel单元格某一范围生成—截图(进阶版—带样式+批量+多级表头)
  • reserve学习笔记(花指令)
  • W3电力线载波通信技术
  • 43.2℃!河南林州打破全省5月最高温纪录,明后天高温将持续
  • 事关中国,“英伟达正游说美国政府”
  • 家庭医生可提前5天预约三甲医院号源,上海常住人口签约率达45%,
  • 罗马教皇利奥十四世正式任职
  • 发射后失联,印度地球观测卫星发射任务宣告失败
  • 美联储官员:美国经济增速可能放缓,现行关税政策仍将导致物价上涨