GitHub Stars 分页获取与网页数据提取示例工作流

该工作流展示了如何自动化获取和处理API数据,特别是通过分页请求抓取GitHub用户的收藏项目。它支持自动递增页码,判断数据结束条件,实现完整数据获取。同时,该流程还演示了如何从维基百科随机页面提取文章标题,结合HTTP请求与HTML内容提取,适用于需要批量抓取和处理多来源数据的场景,帮助用户高效搭建自动化工作流。

流程图
GitHub Stars 分页获取与网页数据提取示例工作流 工作流程图

工作流名称

GitHub Stars 分页获取与网页数据提取示例工作流

主要功能和亮点

该工作流展示了如何使用 n8n 的 HTTP Request 节点实现多种常见数据获取场景,重点突出分页请求的自动循环处理、网页内容抓取及HTML元素提取功能。通过配置分页参数,自动递增页码并判断结束条件,实现对 GitHub 用户收藏项目的完整抓取;同时展示了如何从维基百科随机页面获取文章标题,演示了 HTTP 请求与 HTML 提取的结合应用。

解决的核心问题

  • 自动处理 API 分页请求,避免手动重复调用,保证获取到完整数据。
  • 解析网页二进制内容,提取指定HTML元素信息,支持网页数据抓取。
  • 将复杂的 HTTP 请求响应拆分成易于管理的独立数据项,方便后续处理。

应用场景

  • 需要从支持分页的API接口批量抓取数据的自动化场景,如获取用户收藏、历史记录、订单列表等。
  • 从网页抓取指定内容(如文章标题、新闻摘要、产品信息等)并进行自动化处理。
  • 结合多数据源的异构数据整合和自动化工作流搭建。

主要流程步骤

  1. 手动触发工作流启动。
  2. 通过 Set 节点初始化分页参数(当前页码、每页条数)及目标 GitHub 用户名。
  3. 发起对 GitHub API 的分页请求获取用户收藏项目(Stars)。
  4. 利用 If 节点判断当前请求是否返回空数据,决定是否继续分页循环。
  5. 若未结束,通过 Set 节点将页码递增,继续循环请求下一页数据。
  6. 并行执行获取 Mock Albums 的请求,拆分响应数据为独立项。
  7. 请求维基百科随机页面,提取页面标题作为示例展示 HTML 内容抽取能力。

涉及的系统或服务

  • GitHub API:用于分页获取用户收藏项目数据。
  • JSONPlaceholder API:模拟数据接口,用于示例演示。
  • Wikipedia:随机页面抓取及HTML内容提取。
  • n8n 自身节点:HTTP Request、Set、If、Item Lists、HTML Extract、Manual Trigger。

适用人群或使用价值

  • 自动化开发者和运维人员,需快速搭建API数据抓取与处理流程。
  • 数据分析师和产品经理,关注如何自动获取和整合多来源数据。
  • 技术爱好者,学习API分页处理、网页数据爬取和n8n节点组合应用。
  • 企业希望降低人工数据采集成本,实现数据驱动的业务流程自动化。
GitHub Stars 分页获取与网页数据提取示例工作流