在本指南中,您将了解到:
- 如何使用 n8n、Bright Data 和 OpenAI 来自动化 LinkedIn 数据采集
- 如何构建一个无需编码的工作流程,将候选人资料直接发送到您的收件箱
- 为什么结合网络解锁器、ChatGPT 和 SMTP 可以打造一款强大的招聘工具
让我们开始吧!
快速开始
您可以在 n8n 的 此处查看该工作流程。但为了最简单的设置,我们需要先完成以下准备工作。
自建 n8n 主机
此工作流程依赖于 n8n 的 Community Nodes。Community Nodes 是 n8n 社区里好心人提供的第三方工具。最好的管理方式是将它们打包到一个 Docker 容器中。
安装 Docker
在原生 Ubuntu 或 Windows 的 WSL Ubuntu 环境下,使用以下命令来安装 Docker。您可以在此处了解在其他平台安装 Docker 的方法。
sudo snap install docker
Docker 安装完成后,创建一个存储卷并运行您的容器。
创建 n8n 容器
sudo docker volume create n8n_data
sudo docker run -it --rm --name n8n -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n
安装 Community Nodes
在浏览器中打开 http://localhost:5678/。此时,您将看到完全自建且在本地运行的 n8n Web 应用程序。
在侧边栏,点击个人资料旁边的三点图标并选择“settings”。
进入“settings”菜单后,选择“Community Nodes”。这能让您访问之前所提到的第三方工具。
点击“Install”,会弹出一个安装节点的对话框。在 npm package 栏中粘贴以下包名:
n8n-nodes-brightdata
确认后,点击“Install”。
接着,再以同样的方式安装 Document Generator。
n8n-nodes-document-generator
重启容器
Community Nodes 安装完成后,使用 ctrl+c
终止容器。然后使用以下命令重新启动 n8n:
sudo docker run -it --rm --name n8n -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n
导入工作流程
设置完成后,您终于可以导入前面提到的工作流程了。进入他们的 n8n 页面,点击“Use for free”按钮。
此时会出现一个弹出窗口,里面有几种选项。最简单的方式是选择“Import template to localhost:5678 self-hosted instance”。
输入或导入您的凭据
您将被自动提示输入 Bright Data、OpenAI 和 SMTP 的凭据。
获取 API 密钥
Bright Data
此工作流程使用网络解锁器来执行搜索。注册网络解锁器后,前往网络解锁器控制面板并获取您的 API 密钥。n8n 会使用此密钥与 Bright Data 协作获取搜索结果。
OpenAI
打开 OpenAI 的 开发者平台(如尚未注册,请创建一个账号)。然后点击 “API keys” 生成一个密钥。
SMTP
该流程兼容任何 SMTP 客户端。目前我使用 Elastic Email。他们的免费方案非常适合像这样的小型本地项目。保存好您的 Username、Password、Server 和 Port。我们会在 n8n 中使用这些来自动化电邮。
工作流程步骤
当用户提交表单时
当有用户提交一个网络表单时,会触发我们的工作流程。您可以打开此节点查看参数和设置。但通常不需要修改——它们都是预先配置好的。
创建 LinkedIn URL 和公司搜索
表单提交后,会触发两个并行的分支。
其中一个分支会创建一个用于搜索此人 LinkedIn 资料的 Google URL。
另一个分支则生成另一个 Google URL,用于搜索此人的公司信息。
这两个 URL 都会传入网络解锁器,从而避免被屏蔽。
从搜索结果中提取 HTML
现在,我们从搜索结果中提取 HTML。节点中有两个名为 “Extract Body and Title from Website” 的节点,它们从 Bright Data 返回的 JSON 响应中提取 title
和 body
。
在工作流程中,这两个步骤是同时进行的。
使用 ChatGPT 解析结果
获取到每次搜索的 title
和 body
之后,我们将 HTML 内容传递给 ChatGPT 进行处理。这些节点中会配置如图所示的参数,指定使用的模型(GPT-4o mini)并提供提示,让其提取所需数据。
如您所见,这两个并行分支也会同时执行以上操作。
提取解析结果并分支终止公司搜索
在此阶段,我们的其中一个分支(公司搜索)将通过 “Split Out” 节点结束。与此同时,我们从 “人名” 分支的数据中提取解析完的结果。
下图展示了提取工作的配置。我们主要是从较大的 JSON 数据中抽取更小的片段。
“公司”分支此时已经结束,而“人名”分支则还有一些步骤要完成。“公司”分支会一直暂停,直到“人名”分支准备好合并——这正体现了 n8n 的强大之处:异步编程不需要手写任何代码!
限制为一个资料并验证其是否存在
在“人名”分支中,我们先筛选结果以确保只匹配到正确的资料,然后限制为仅保留一个资料,并验证其确实存在。如果找不到,我们就会更新表单并告知用户资料不存在。
如果资料存在,我们就可以合并回一个完整的工作流程。
合并工作流程
如图所示,两个分支的输出都会被当作输入。它们合并为一个单一输出,方便我们再次传递给 ChatGPT。
一切终于汇集到一起。获得完整数据后,我们就可以执行最后的步骤。
编写外联邮件与后续步骤
现在,我们将合并后的输出再次传给 ChatGPT,用来生成最终的邮件内容。它甚至会直接生成 HTML,因此我们无需自己操心页面标记。
当 ChatGPT 返回 HTML 后,我们就可以发送邮件了。
发送邮件
打开“Send Email”节点,确保填写的凭据和连接信息正确。可以看到,我们将 json.message.content.content
传递到邮件正文中。它会把来自 ChatGPT 的 HTML 内容直接粘贴进邮件主体。
将“From Email”改为您在使用的 SMTP 邮箱。“To Email”是收件人——可将其改为您自己的邮箱,这样候选人信息就会进到您的个人收件箱。
更新表单并显示完成状态
最后,我们更新表单,告诉用户操作已完成。如果您打开“Form Email Sent”,可以看到表单更新的各种参数。我们在这里显示了一个“Completion Tile”提示“谢谢!”,并显示“我们已经给您发送了一封邮件。”
至此,完整的工作流程就完成了!您可以点击“Test Workflow”来查看整个流程的运行情况。
效果展示
如果您选择运行此工作流程,首先会出现一个提示,让您填写搜索表单。填写后,点击“Get References”。
执行完成后,您的表单应如下图所示。可以看到,它显示了“谢谢!”并展示了完成提示。
如果打开您的邮箱,就会看见一封新邮件,其中包含对候选人的详细概述,并附有指向其网站和 LinkedIn 资料的链接。此外,还会看到 ChatGPT 提供的外联和后续沟通建议。
结论
通过 n8n、Bright Data、OpenAI 和 SMTP,您已经构建了一个完整的自动化 LinkedIn 数据采集和外联工作流程—无需编写复杂代码。这个强大的组合能简化招聘流程,并将充实的候选人资料以及个性化邮件直接发送到您的收件箱。
无论您是在扩展招聘流程,还是提升潜在客户获取能力,这个流程都只是一个起点。Bright Data 提供了全套工具,助您将自动化提升到新高度:
- 网络解锁器:可避开验证码、阻断以及机器人检测,可靠地抓取 LinkedIn 及其他网站。
- 住宅代理:使用来自全球真实用户 IP,确保高成功率并支持地理定位。
- 抓取浏览器:带有内置代理支持的无头浏览器—适合处理大量 JavaScript 的页面。
- 网页抓取工具 API:使用预构建的抓取模板,轻松提取结构化数据。
- 数据集:访问现成的数据集(如职位列表、公司数据等),为您的外联提供更多信息。
立即注册免费试用,开启更加智能的自动化体验!