抓取来源与平台支持
Sweepy 通过两种方式发现职位。它直接查询四个公开 ATS 招聘网站和一个纽约招聘网站,也可以通过 python-jobspy 读取聚合职位源。本页列出所有来源,并说明如何让 Sweepy 覆盖你的领域。
默认来源
开箱即用时,Sweepy 扫描五个确定性源,外加一条聚合器路径。确定性源使用任何人都能打开的公开端点,无需账户、登录或付费服务。
| 来源 | 配置键 | 种子文件 | 端点 |
|---|---|---|---|
| Greenhouse | sources.greenhouse.boards | data/sources/greenhouse_boards.txt | boards-api.greenhouse.io/v1/boards/{board}/jobs?content=true |
| Ashby | sources.ashby.orgs | data/sources/ashby_orgs.txt | api.ashbyhq.com/posting-api/job-board/{org} |
| Lever | sources.lever.companies | data/sources/lever_companies.txt | api.lever.co/v0/postings/{company}?mode=json |
| Workable | sources.workable.slugs | data/sources/workable_slugs.txt | apply.workable.com/api/v1/widget/accounts/{slug} |
| Built In NYC | sources.builtinnyc.categories | data/sources/builtin_categories.txt | builtinnyc.com/{category} |
| Glassdoor | sources.jobspy.glassdoor | 无 | 通过 python-jobspy |
开关规则
同时满足下列两项设置时,Sweepy 才会运行某个确定性源:
- 把
sources.<name>.enabled设为true。 - 在存在对应设置时,把
platforms.<name>设为true。
两个键都默认为 true。
请注意以下例外:
- Built In NYC 没有
platforms.builtinnyc设置。引擎只遵循sources.builtinnyc.enabled。每张卡片包含来自列表页的公司、工作模式、地点和薪资。设置sources.builtinnyc.detail_pages: true还能读取完整职位文本。Built In 在若干次请求后会拦截这些页面,Sweepy 遇到第一次拦截即停止。 - Glassdoor 通过
python-jobspy运行,遵循sources.jobspy.glassdoor。不存在platforms.glassdoor键,因此仅靠该sources键即可关闭。
要关闭某个来源,将其任一键设为 false。
配置文件早于 v2.2.0 时
Greenhouse 和 Lever 现在默认运行。Sweepy 在 v2.2.0 中更改了此行为。除非你关闭这些来源,现有配置文件会发现新增的职位。任何参数默认值都未改变。
platforms.ashby: false、platforms.workable: false、platforms.greenhouse: false 和 platforms.lever: false 现在会停止这些确定性种子源。在 v2.2.0 之前,它们只过滤 python-jobspy 的结果。
用 sources.<name>.enabled: false 或其 platforms.<name>: false 关闭来源。
种子文件的工作方式
配置文件将来源列表留空时,Sweepy 使用 data/sources/ 中的种子文件作为回退。
- 空列表(例如
boards: [])会回退到精选种子文件。 - 显式列表会完全覆盖种子。你的列表替换种子,引擎不会合并两者。
以你的列表为准。招聘网站和职位分类由你决定。
面向你所在领域的示例
在配置文件的 sources 区段下添加你关注的 ATS 招聘网站、组织、公司、标识和分类。
法律
sources:
ashby:
orgs:
- "crosby"
- "normlaw"
- "hargrove-firm"
- "lawhive"
workable:
slugs:
- "shegerianand-associates-1"
- "harper-james"
- "legalvision"
builtinnyc:
enabled: true
categories:
- "jobs/legal"
- "jobs/legal/search/paralegal"
技术写作
sources:
greenhouse:
enabled: true
boards:
- "gitlab"
- "cloudflare"
ashby:
orgs:
- "modal"
- "perplexity"
- "replit"
lever:
enabled: true
companies:
- "spotify"
workable:
slugs:
- "soda-data-nv"
builtinnyc:
enabled: true
categories:
- "jobs/technical-writer"
医疗与生物技术
sources:
workable:
slugs:
- "bask-health-1"
- "atria-health"
builtinnyc:
enabled: true
categories:
- "jobs/healthcare"
复制最贴近你领域的区块,再替换成你已关注的公司内容。招聘网站标识来自公司的公开招聘地址。
自定义平台
在 platforms.custom 下注册自定义 ATS 域名。引擎读取发现的每个职位链接并与你的域名比对。Sweepy 把匹配项放入单独的报告目录。
platforms:
custom:
- name: "LawCrossing"
domain: "lawcrossing.com"
enabled: true
- name: "Indeed Legal"
domain: "indeed.com/legal"
enabled: true
每个条目包含三个字段:
| 字段 | 必需 | 作用 |
|---|---|---|
name | 是 | Sweepy 在报告中为此平台显示的标签。 |
domain | 是 | 引擎用来与每个职位链接比对的域名或路径。 |
enabled | 否 | 设为 false 可保留条目但跳过匹配。默认为 true。 |
可选引擎
Sweepy 默认包含 ats 和 jobspy 引擎。可选引擎在你下载后才会增加招聘网站。
| 引擎 | 招聘网站 | 安装前准备 |
|---|---|---|
hirehunt | LinkedIn、Indeed、Naukri、Shine、Internshala、Unstop、Google Careers、Amazon、Meta、Apple、Netflix、Microsoft | 无 |
openroles | 你指定的 Greenhouse、Lever、Ashby 和 Workday 招聘网站 | companies 标识 |
jobdrop | 33 个招聘网站,包括 Google、Wellfound、Workday、iCIMS、Dice 和 USAJobs | 与 JobSpy 一起安装时传入 --allow-engine-conflicts |
apify | 通过托管 actor 访问 LinkedIn | APIFY_TOKEN 与 Apify 计费 |
一次性安装所有兼容引擎:
sweepy --install-engines all
all 集合会跳过 JobDrop,因为它锁定 curl-cffi<0.8,而 JobSpy 需要 curl_cffi>=0.16.2。
单独安装 JobDrop:
sweepy --install-engines jobdrop --allow-engine-conflicts
设置向导的下载职位引擎选项执行同样的安装。然后在 sources.enabled 下列出该引擎并设置其招聘网站选项:
sources:
enabled: [jobspy, ats, openroles]
openroles:
companies:
- "figma"
- "stripe"
带宽开销权衡
Greenhouse 招聘网站通过追加 ?content=true,在每个网站的一次请求中获取完整内容。职位描述、部门和薪资元数据随即可用于评分。部分网站返回数百条职位,因此一次扫描在所有种子网站上可能拉取数十兆字节。
Sweepy 通过三种方式控制这一开销:
- 规范化每条记录时,按配置文件的
titles预筛选职位。 - 每次只向一个种子源发送请求,从不并行。
- 请求之间按
SWEEPY_SOURCE_DELAY间隔暂停,默认 0.2 秒。
种子列表越小,完成越快。若扫描显得缓慢,请先精简种子列表。
平台兼容性
Sweepy 抓取纯 HTML 且不使用无头浏览器,因此某些类型的平台返回的数据较少。
| 平台类型 | 示例 | 兼容性 | 注意事项 |
|---|---|---|---|
| 公开 ATS | Greenhouse、Ashby、Lever、Workable、SmartRecruiters、Breezy HR | 完全支持 | Sweepy 解析标准的服务端渲染职位页面,并检查每个链接是否有响应。 |
| 客户端渲染的单页应用 | myworkdayjobs.com 上的 Workday、Oracle HCM | 有限支持 | 这类平台用客户端 JavaScript 渲染职位页面。没有无头浏览器时,初始 HTML 载荷可能缺少职位描述。 |
| 需登录的门户 | Handshake、企业内网 | 不支持 | 这些门户需要会话 Cookie 或 SSO 凭据。 |
| 反机器人聚合器 | 启用 Cloudflare Turnstile 或 PerimeterX 的网站 | 受限流影响 | 自动化 HTTP 请求在没有代理轮换时可能触发 HTTP 403 拦截。 |
当聚合职位源包含 Workday 职位时,报告中仍可能出现这些职位。Sweepy 会验证链接,并用载荷中的文本为职位评分。