JobSpy
活跃·★ 4.6k·MIT·更新于 2026-10-27
JobSpy 是用于收集职位信息的 Python 库。一次 scrape_jobs() 调用会并发查询 LinkedIn、Indeed、Glassdoor、ZipRecruiter、Google、Bayt、Naukri、BDJobs 和 HelloWork,返回一个 pandas DataFrame,包含职位、公司、地点、类型、薪资区间、链接和描述。筛选条件包括关键词、地点与距离、职位类型、远程、站内申请,以及发布了多少小时。
除了库本身,它现在还会安装 jobspy 命令(每个职位输出一行 JSON,适合 shell 管道),以及可用 uvx 运行的 MCP 服务器 mcp-jobspy,让 AI 助手直接检索职位。代理按站点轮换,LinkedIn、Indeed、BDJobs 支持 SOCKS。
抓取招聘网站依赖对方的页面结构和反爬策略,各站结果不一:有些站点要开 fetch_description 才有完整描述,Glassdoor 只能按整天筛选,大量抓取需要代理。规模化采集前请先确认各网站的使用条款。
#职位抓取#Python#LinkedIn#Indeed#Glassdoor#MCP#命令行
01
功能特性
01一次 scrape_jobs() 调用并发查询最多九个招聘网站,结果合并为 DataFrame
02可按地点、距离、职位类型、远程、站内申请和发布时间(小时)筛选
03支持轮换代理,LinkedIn、Indeed、BDJobs 还支持 SOCKS 代理
04jobspy 命令行把每个职位以一行 JSON 输出到 stdout,方便脚本处理
05MCP 服务器 mcp-jobspy,可用 uvx mcp-jobspy@latest 直接运行
02
为什么选择它
+一次调用覆盖九个招聘网站,返回一个可筛选、可导出 CSV 的 DataFrame。
+三种用法:Python 库、适合脚本的 JSON 行命令行、给 AI 助手用的 MCP 服务器。
+实用的筛选项,如按小时计的发布时间、远程、站内申请,并支持轮换代理。
03
权衡点
!招聘网站改版或加强反爬时抓取会失效,偶尔会有缺口。
!各站数据完整度不同,部分站点要逐条额外请求才能拿到完整描述。
!大规模采集可能与招聘网站的服务条款冲突。
04
维护状况检查
活跃检查日期: 2026-10-23
- 最近提交
- 2026-10-22
- 近 90 天提交数
- 37
- 近 90 天发布数
- 5
- 最新发布
- v1.4.0 (2026-10-19)
- 未关闭 issue
- 33
- 近期 issue 至少有一条评论的比例
- 0/1
近 12 周每周提交数
最早的一周在左边,最近 4 周为橙色。数据来源:GitHub 提交统计。
状态规则:GitHub 上已归档 = 已归档;最近提交在 90 天内 = 活跃;91 到 365 天 = 放缓;更久 = 停滞。所有数字来自所示日期的 GitHub API。
讨论最多的未关闭 issue
- #284 Google Jobs is currently unavailable6 条评论 · 2025-06-06
- #253 Is it possible to get job benefits and expiration date from indeed6 条评论 · 2025-03-02
- #238 [FEATURE REQUEST] Easy Apply Platforms3 条评论 · 2025-01-28
- #368 Feature: Scrape directly from company career website2 条评论 · 2026-06-23
- #242 Async Support2 条评论 · 2025-02-08
issue 标题引自 GitHub。请打开链接确认该问题是否仍适用于你使用的版本。
05
兼容性
Python
Python 3.10+
已通过文档验证
Claude Code
MCP
已通过文档验证
Cursor
MCP
已通过文档验证
06
快速开始
1
$ pip install -U python-jobspy
07
使用场景
↳搭建个人求职流水线,把符合条件的职位导出成 CSV
↳让 Claude 等 MCP 客户端检索最新职位
↳跨平台收集薪资区间等招聘市场数据做分析
08
同类工具
评论
登录后发表评论
暂无评论,来发表第一条吧