Mindket

在 LinkedIn 上找工作,每个职位配一封求职信

新上架第 1 版 · 更新于

概览

一个找工作用的 n8n 工作流。表单收下地点、职位名称和一份 PDF 简历。Apify 抓取 LinkedIn 上的职位,gpt-4o-mini 对照简历给每个职位打分并写一封求职信,全部存进 Google Sheets。

在 LinkedIn 上找工作,每个职位配一封求职信 是一款 n8n 工作流,属于效率类,由 Mindket 上架。可免费获取。当前为第 1 版,最近更新于 。在本页下载,或复制它的 JSON,再导入 n8n 画布。在 n8n 里启用之前,它不会运行。

速览

用在
  • n8n Cloud:在那里新建一个工作流,把文件导入进去
  • 你自己的 n8n 服务器:同一个文件,同样的步骤
  • Google Sheets:每个职位占一行,求职信就在链接旁边
  • 招聘网站和邮箱:投递时从表格里复制那封信

平台

连接 3 个应用

运行方式

触发

求职表单

有人提交 Job Search 表单时开始运行,表单里有:

  • 地点,比如一个城市或国家
  • 职位名称
  • PDF 格式的简历,放在 Your Resume 里

动作

  1. 从 PDF 里读出简历的文字
  2. 一个 Apify Actor 按地点和职位收集 LinkedIn 上的招聘信息
  3. gpt-4o-mini 对照简历给每个职位打分
  4. 第二次调用为这个职位写一封求职信
  5. 职位和求职信存进 Google Sheets,按链接匹配

结果

一张在招职位的表格,每个职位都有链接、公司、职位描述和一封可修改的求职信

集成

开始之前要准备好这些。

Apify

职位抓取

用你的地点和职位运行一个 LinkedIn 职位 Actor,返回每条招聘的链接、公司、描述和发布日期。

需要Apify API 令牌,填在节点的请求头里,以及够用的运行额度

OpenAI

语言模型

每个职位运行两次 gpt-4o-mini:一次评估匹配度,一次写求职信。

需要OpenAI API 密钥

Google Sheets

职位表格

为每个职位加一行,链接相同的就更新那一行。

需要一个用来登录的 Google 账号,以及一张有六个表头的表格

工作流检查

由 Mindket 于 2026年11月13日检查

步骤
8 个步骤,由表单启动
AI
2 个步骤调用 AI 模型:OpenAI4、OpenAI3
登录
需要登录:Google Sheets、Apify
API 密钥
文件里没有留下 API 密钥;有 1 处留空,需填入你自己的密钥
步骤类型
Mindket 的检查器能读懂它全部 7 种步骤类型

以上内容读自工作流文件,并非实际运行的结果。

关于

它是什么

这个 n8n 工作流在 LinkedIn 上找正在招人的职位,并根据你的简历为每个职位起草一封求职信。表单收下地点、职位名称和一份 PDF 简历,再由一个 Apify Actor 抓取符合条件的职位。每个职位先由 gpt-4o-mini 评估简历的匹配程度,再写信。Google Sheets 为每个职位留一行,记下链接、公司、职位描述、发布日期和求职信。它由八个工作节点和一个便签组成。

适合谁

同时投很多相近职位、想给每个职位先拿到一版草稿的人,以及帮他们求职的职业教练和招聘顾问。如果你只想给最匹配的职位写信,就别选它。文件会给每个职位打分,但不管分数高低都照样写信,分数也不保存。

谁在用,怎么用
行业谁在用怎么用例子
软件和数据求职者每周在一个城市搜一个职位名称,修改新写出的信一位数据分析师每周一搜柏林的职位,把其中值得发的两封信发出去。
职业辅导职业教练把客户的简历放进表单,和客户一起过一遍草稿教练让客户看到同一份简历放在五个不同职位前读起来有什么不同。
高校就业指导就业顾问为还不确定往哪投的毕业生跑一次顾问为一名毕业生跑一次,从表格里挑出三个职位。
招聘猎头公司的招聘顾问给候选人打电话前先搜一个职位名称招聘顾问列出一个城市里的空缺职位,把表格留作候选清单。

你需要懂一点 n8n,还要有三个账号:Apify、OpenAI 和 Google。作者估计设置要 13 分钟左右,前提是账号都已备好。

用在哪里

只要 n8n 能访问 Apify、OpenAI 和 Google 就能运行。职位和求职信都写进同一张 Google 表格。

  • n8n Cloud:在那里新建一个工作流,把文件导入进去
  • 你自己的 n8n 服务器:同一个文件,同样的步骤
  • Google Sheets:每个职位占一行,求职信就在链接旁边
  • 招聘网站和邮箱:投递时从表格里复制那封信

设置

点“获取”会把一个压缩包存到你的下载文件夹,里面有 workflow.json 和 Mindket 写的设置说明。先建好表格,因为最后一个节点要往里写。

先准备好这些
需要说明
n8nn8n Cloud 或你自己的服务器
Apify一个账号和它的 API 令牌,账户里要有够跑 LinkedIn 职位 Actor 的余额
OpenAI一个 API 密钥。两个模型步骤都用 gpt-4o-mini
Google一个能编辑这张表格的账号,用于 Google Sheets OAuth2 凭据
一张表格一个名为 Sheet1 的标签页,第一行有六个表头:Link、Title、Job Description、Date、Company Name 和 Cover Letter
  1. 在 n8n 里新建一个工作流,打开它的菜单,选 Import from File,选中 workflow.json。
  2. 建好表格,复制它的 ID,也就是地址里 /d/ 和 /edit 之间那一长段。
  3. 添加一个 Google Sheets OAuth2 凭据,在 Google Sheets1 里选中它,再把 YOUR_SHEET_ID 换成这个 ID。
  4. 添加一个 OpenAI 凭据,在 OpenAI4 和 OpenAI3 里选中它。
  5. 在 Linkedin Job Scrapper 里,把 Authorization 请求头中的 <YOUR_APIFY_TOKEN> 换成你的令牌。尖括号也一起删掉,让请求头读作 Bearer、一个空格和令牌。
  6. 保存,打开表单的测试地址,填好三个字段后提交。
  7. 前几行看着没问题,就点 Publish。

如何使用

打开表单,填一个地点,比如一个城市或国家,再填职位名称,附上 PDF 格式的简历。表单会马上确认收到。在后台,Apify 要先把整个搜索跑完,后面的步骤才会开始,所以第一行可能要等几分钟。之后每个职位调用两次模型。用同样的条件再跑一次,链接相同的行会被更新,信也会重写。

想要不同的效果,改这里
要改的在哪里改
怎样算匹配OpenAI4 的系统消息,它按技能、级别、远程工作和过往职位给分
求职信的语气和长度OpenAI3 的系统消息,只有一行
搜索什么Linkedin Job Scrapper 的 JSON 请求体,只发送地点和职位名称
保存哪些列Google Sheets1 的映射。Benefits 在 Edit Fields1 里留着,却从没保存
模型OpenAI4 和 OpenAI3 里的 gpt-4o-mini

示例

你在表单里这样填。

Location: Manchester, United Kingdom
Title: Marketing coordinator
Your Resume: cv.pdf

Apify 返回它在曼彻斯特一带找到的市场协调员职位。每个职位,OpenAI4 给出一个分数,OpenAI3 写出一封信,形状分别如下:

{ "score": "…" }
{ "cover_letter": "…" }

每个职位变成一行,带着链接、职位名称、描述、发布日期、公司和那封信。分数只留在这次运行的数据里,没有哪一列接收它。

新手与专家

新手:n8n 把工作流画成一个个用线连起来的方框,每个方框叫一个节点,只做一件事。这里的 Loop Over Items 一次把一个职位送下去,写完表格后再收回来。先试一个范围窄的搜索。跑完后每个节点都会显示它收到和送出的内容,令牌填错或简历是扫描件,都会在这里看出来。

专家:两个模型步骤是普通的 OpenAI 调用,输出 JSON,不是智能体,所以每个职位刚好两次请求。

每一步背后的模型或服务
步骤模型或服务要知道的
Linkedin Job Scrapper一个 Apify Actor,按 ID 调用一次经由 Apify 住宅代理的同步调用。Apify 的 API 文档给这类调用 300 秒
OpenAI4gpt-4o-mini把职位当作 JSON,和简历文字一起读。提示词要求满分 5 分,可它列出的分值加起来是 10
OpenAI3gpt-4o-mini读职位名称、描述、公司、地点和简历,用 cover_letter 作答

想保留分数,就加一个 Score 表头,在 Google Sheets1 里把 {{ $('OpenAI4').item.json.message.content.score }} 映射过去。之后在 OpenAI4 后面加一个 If 节点,就能跳过匹配度低的职位。

注意事项

每个职位要调用两次模型,文件里还有两处缺口会影响你拿到的结果。

  • 费用:Apify 按 Actor 的运行收费,它商店里有些 Actor 还另收月租,先看它的页面。OpenAI 为每个职位收两次小调用的钱
  • 分数没保存:OpenAI4 给每个职位打分,但没有节点读取它的回答,每个职位都会写信
  • 搜索数量:请求体没有设数量,返回多少职位由 Actor 自己的默认值决定
  • 只认 PDF:Extract from File 读的是 PDF 的文字层。扫描件简历让模型无字可读
  • 模型期限:OpenAI 的弃用页面(2026 年 11 月 2 日查阅)列出 GPT-4o mini(gpt-4o-mini-2024-07-18)将于 2027 年 1 月 14 日从 API 下线,替代模型是 gpt-6-luna
  • 公开的表单:发布之后,拿到表单地址的任何人都能用你的 Apify 和 OpenAI 账号发起搜索
  • 你的数据:简历文字和每份职位描述会发给 OpenAI,地点和职位名称会发给 Apify
  • 你的令牌:Apify 令牌写在一个请求头里,分享工作流之前先把它删掉
  • 凭据:JSON 里没有任何凭据,也没有作者表格里的任何内容

README 和文件

README

在 LinkedIn 上找工作,每个职位配一封求职信

一个找工作用的 n8n 工作流。提交一个表单,写上地点、职位名称,附上 PDF 简历。一个 Apify Actor 抓取符合条件的 LinkedIn 职位,gpt-4o-mini 对照简历给每个职位打分并写一封求职信,每个职位都记进一张 Google 表格。

包里有什么

  • workflow.json:n8n 导出的工作流,九个节点,其中一个是便签。里面没有任何凭据。
  • README.md:这份说明,压缩包里的是英文版。

和原来的副本相比的改动

  • Linkedin Job Scrapper 的 Authorization 请求头里原本只有一个光秃秃的占位符,现在写作 <YOUR_APIFY_TOKEN>。
  • 作者的电子表格已经去掉。Google Sheets1 需要填 YOUR_SHEET_ID,并按名称 Sheet1 找到标签页。

开始之前

  • 一个 n8n 实例,n8n Cloud 或自己的服务器都行。
  • 一个 Apify 账号和它的 API 令牌,账户里要有够跑文件里那个 LinkedIn 职位 Actor 的余额,它按 ID BHzefUZlZRKWxkTck 调用。先在 Apify Store 里看它的页面:那里有些 Actor 在用量之外还收月租。
  • 一个 OpenAI API 密钥。
  • 一个 Google 账号,和一张 Google 表格,里面有一个名为 Sheet1 的标签页,第一行是这些表头:Link、Title、Job Description、Date、Company Name、Cover Letter。

设置

  1. 在 n8n 里新建一个工作流,打开它的菜单,选 Import from File,选中 workflow.json。
  2. 建好表格,复制它的 ID,也就是地址里 /d/ 和 /edit 之间那一长段。
  3. 添加一个 Google Sheets OAuth2 凭据,在 Google Sheets1 里选中它,再把 YOUR_SHEET_ID 换成这个 ID。
  4. 添加一个 OpenAI 凭据,在 OpenAI4 和 OpenAI3 里选中它。
  5. 在 Linkedin Job Scrapper 里,把 Authorization 请求头中的 <YOUR_APIFY_TOKEN> 换成你的令牌。尖括号也一起删掉,让请求头读作 Bearer、一个空格和令牌。
  6. 保存,打开表单的测试地址,填好三个字段后提交。
  7. 前几行看着没问题,就点 Publish。

一次运行怎么走

  1. On form submission 收下 Location、Title 和 Your Resume,三项都必填。
  2. Extract from File 读出 PDF 里的文字。
  3. Linkedin Job Scrapper 把地点和职位名称发给 Apify Actor,等它返回职位。
  4. Loop Over Items 一次送一个职位往下走。Edit Fields1 留下它的链接、职位名称、描述、发布日期、公司和福利。
  5. OpenAI4 对照简历文字给职位打分,用 score 作答。
  6. OpenAI3 根据职位和简历写信,用 cover_letter 作答。
  7. Google Sheets1 新增一行,或更新 Link 相同的那一行。然后循环取下一个职位。

保留分数

OpenAI4 给每个职位打分,但没有节点读取它的回答:表格里没有对应的列,不管分数多少都会写信。想保留分数,就加一个 Score 表头,在 Google Sheets1 里把下面这个映射过去:

{{ $('OpenAI4').item.json.message.content.score }}

想跳过匹配度低的职位,就在 OpenAI4 和 OpenAI3 之间放一个 If 节点,把低分的送回 Loop Over Items。提示词要求满分 5 分,可它列出的分值加起来是 10,按分数筛选之前,先在提示词里定下一种分制。

改变结果

  • 怎样算匹配:OpenAI4 的系统消息。它为技能对口、级别合适、远程职位、过往职位和符合资格条件给分。
  • 求职信:OpenAI3 的系统消息,只有一行,要求写一封贴合职位的信。
  • 搜索:Linkedin Job Scrapper 的 JSON 请求体,只发送地点和职位名称。Actor 的页面列出了它接受的其他字段。
  • 列:Google Sheets1 里的映射。Benefits 在 Edit Fields1 里留着,却从没保存。
  • 模型:两个 OpenAI 节点都用 gpt-4o-mini。

注意事项

  • 每个职位调用两次 gpt-4o-mini,Apify 按 Actor 的运行收费。
  • 请求体没有设数量,返回多少职位由 Actor 的默认值决定。这个调用要求使用 Apify 的住宅代理。
  • Apify 的 API 文档给这样的同步调用 300 秒。超时的搜索会结束,拿不到职位,所以开头几次搜索范围要窄。
  • Extract from File 读的是 PDF 的文字层。扫描件简历让模型拿不到文字。
  • 地点或职位名称里带双引号,会弄坏 JSON 请求体。
  • OpenAI 的弃用页面(2026 年 11 月 2 日查阅)列出 GPT-4o mini(gpt-4o-mini-2024-07-18)将于 2027 年 1 月 14 日从 API 下线,替代模型是 gpt-6-luna。在那之前把两个 OpenAI 节点的模型都换掉。
  • 发布之后,拿到表单地址的任何人都能用你的账号发起搜索。别把地址给别人,或者打开表单触发器的基本认证。
  • 简历文字和每份职位描述会发给 OpenAI,地点和职位名称会发给 Apify。
  • Apify 令牌写在一个请求头里,分享工作流之前先把它删掉。
文件
README.md  5 KB
workflow.json  12 KB

2 个文件,共 16 KB,以 zip 压缩包下载。

更新内容

  • 第 1 版 · 2026-11-03

评价

还没有评分

写评价

还没有评价。

Mindket 的更多商品

查看 Mindket 的全部商品

Huashu Design

alchaincyf · 技能

把你在 AI 智能体里写的一句话需求,变成一份完成的设计:发布动画、可点击的应用原型、可编辑的幻灯片、信息图,或一组小红书图片。可在多种智能体中使用。

新上架29.4k

Guizang PPT Skill

op7418 · 技能

能生成单文件 HTML 幻灯片、幻灯片配图和多平台封面的技能,有两套视觉风格,还带演讲者模式用于排练。适合使用 Claude Code 或 Codex 的演讲者。

新上架29.8k

Claude Code Skills & Plugins

alirezarezvani · 技能

为 Claude Code 和其他编程智能体提供 411 个现成技能,按角色分组,从工程、产品到营销、财务和合规。以插件方式安装。适合开发者和业务团队。

新上架29.8k

效率类的相似商品

查看效率类的全部商品

Frontend Slides

zarazhangrui · 技能

从零开始或从 PowerPoint 文件生成 HTML 演示文稿,并展示几种视觉风格预览供你挑选,适合不懂 CSS 和 JavaScript、又想做网页幻灯片的人。

新上架32.3k

IPTV

iptv-org · 工具包

把来自多个国家的公开电视直播频道整理成播放列表,任何支持直播流的视频播放器都能打开。适合想看直播的观众,也适合需要频道数据的开发者。

新上架144k

upscaler

uwg · 工具包

收录来自 OpenModelDB 社区的一组图像放大模型,适合想在自己电脑上用 AI 放大低分辨率图片的人。

新上架