在尽职调查中,当前的职位板是了解目标公司招聘情况最没用的视角。它只显示今天开放的职位。真正重要的问题都关于变化:销售招聘是不是在交易流程启动前两个月就停了?哪些职位已经重新发布了三次?推介材料里那个新区域,到底有没有过哪怕一个招聘需求?
用于尽职调查的职位发布 API 必须回答这些问题,而你手里只有几周时间,不是一年的快照。如何把目标公司当前的职位板读成 JSON,面向顾问的职位发布文章已经讲过。本文讲的是那篇文章说它做不到的部分:你第一次快照之前的历史。
目标公司的招聘历史存在哪里?
通常在 Wayback Machine 里,它往往已经抓取这个职位板好几年了。它的 CDX 索引列出某个 URL 的每一次抓取,collapse=timestamp:6 则让每个月只保留一条:
curl -X POST https://crawlforge.dev/api/v1/tools/fetch_url \
-H "X-API-Key: cf_live_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"url": "https://web.archive.org/cdx/search/cdx?url=job-boards.greenhouse.io/target-co&output=json&fl=timestamp,statuscode&filter=statuscode:200&collapse=timestamp:6&from=2025"
}'这次调用花 1 credit,返回形如 ["20250320221034","200"] 的行,每月一行。我们查过的一个 Greenhouse 职位板,HTML 页面在最近 20 个月里每个月都有抓取,而它的 JSON 端点全年只有三次成功抓取。存档覆盖率因 URL 而异,所以要对职位板用过的每个地址都查一遍索引,选抓取最密的那个。
怎样读取存档的职位板?
在时间戳后面加上 id_。这样存档会返回原始正文,不带回放工具栏:
{
"url": "https://web.archive.org/web/20250320221034id_/https://job-boards.greenhouse.io/target-co",
"max_inline_chars": 1000000
}通过 fetch_url 读取每份抓取花 1 credit。存档的 API 抓取就是职位板当天返回的 JSON。存档的 Greenhouse HTML 页面同样把职位作为数据嵌在页面里,每个职位都带有 published_at、updated_at 和 requisition_id。请调高 max_inline_chars,因为我们查过的那份 HTML 抓取约 550 KB,远超默认的 40,000 个字符。
对比结果应该告诉你什么?
在公司填写了 requisition_id 的情况下,用它而不是职位 id 来归并每一份抓取。同一个招聘需求经常在多个城市发布,每个城市各有一个职位 id,所以按发布数量计数会高估招聘规模。然后把各个月份对齐:
| 跨抓取的规律 | 向管理层提的问题 |
|---|---|
| 交易流程启动前的几个月里,销售或工程类招聘需求陆续消失 | 是否有过招聘冻结?原因是什么? |
| 同一个招聘需求以新的职位 id 重新发布 | 这个职位是难招,还是招到人后又空出来了? |
| 某个职位从第一份抓取起就一直开放 | 这个职位还有预算吗?还是只是常年招聘的挂牌职位? |
| 推介材料里的扩张区域没有任何招聘需求 | 扩张什么时候能拿到人员编制(HC)? |
| 某个管理层职位出现、消失、又再次出现 | 谁离开了?现在由谁代管这项工作? |
拿当前的销售职位数量去对照推介材料,是另一项检查,见商业尽职调查那篇文章。
要花多少钱?
一次 CDX 调用、十二份月度抓取加上当前职位板,每家目标公司共 14 credits。再加五家可比公司就是 84 credits,按每千 credits 3 美元计约 25 美分。新账户的一次性额度大约够查 70 家目标公司。
用于尽职调查的职位发布 API 有哪些局限?
- 空缺来自存档,你无法补上。 没人抓取过的职位板就没有历史;某个月没有抓取,是空白,不是零。
- 职位发布不等于人员编制。 招聘需求只说明某个职位有过预算,不代表真的招到了人,也不代表这个职位真实存在。
- HTML 可能只有一页。 我们查过的那份抓取嵌入了 50 个职位;职位更多的职位板可能需要改用它的 API 抓取。
- 只有公开的抓取。 这些都碰不到 CIM(保密信息备忘录)或管理层账目。存档自身的
robots.txt和任何网站一样会被遵守,被拒绝的请求不收费。
创建一个免费账户,在和管理层开会之前,把当前目标公司职位板过去一年的记录拉下来。所有参数见 fetch_