稳定爬取 Indeed/LinkedIn 等招聘平台职位,支持远程 / 全职 / 薪资筛选、自定义代理、多维度精准搜索,一键部署即可获取海外职位数据。
基于 JobSpy 的 CoreClaw 多平台职位聚合搜索 Worker。
| 平台 | 键值 | 状态 | 说明 |
|---|---|---|---|
| Indeed | indeed | ✅稳定 | 覆盖最广,无速率限制 |
| ✅稳定 | 单 IP 约 10 页后可能触发速率限制 | ||
| Glassdoor | glassdoor | ⚠️ 不稳定 | API 变更,地点解析问题 |
| ZipRecruiter | zip_recruiter | ❌ 被拦截 | Cloudflare WAF 返回 403 Forbidden |
| Google Jobs | ⚠️ 不稳定 | 需使用特定语法的 google_search_term | |
| Bayt | bayt | ❌ 被拦截 | 403 Forbidden(反机器人) |
| Naukri | naukri | ❌ 被拦截 | 需要验证码 |
| BDJobs | bdjobs | ❌ Bug | 上游 Bug:缺少 user_agent 参 |
推荐:使用 ["indeed", "linkedin"] 获得稳定结果。
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
site_name | 字符串列表 | ["indeed", "linkedin"] | 要搜索的招聘平台(可多选)。并发拆分字段 |
search_term | 字符串 | "Software Engineer" | 职位名称或关键词 |
location | 字符串 | "New York" | 城市、州或国家 |
country_indeed | 下拉选择 | "usa" | Indeed/Glassdoor 搜索国家(21个选项) |
distance | 整数 | 50 | 搜索半径(英里) |
is_remote | 开关 | false | 仅筛选远程工作 |
job_type | 下拉选择 | "" | 雇佣类型(全职、兼职、合同、实习等) |
results_wanted | 整数 | 50 | 每个平台返回结果数 |
description_format | 下拉选择 | "markdown" | 职位描述格式(markdown / html / plain) |
enforce_annual_salary | 开关 | true | 将所有薪资换算为年薪 |
linkedin_fetch_description | 开关 | false | 获取 LinkedIn 完整描述(较慢) |
hours_old | 整数 | 0 | 仅返回最近 N 小时内发布的职位(0 = 不筛选) |
offset | 整数 | 0 | 跳过 N 条结果(用于分页) |
google_search_term | 字符串 | "" | Google Jobs 专用搜索词 |
easy_apply | 开关 | false | 仅筛选一键申请职位(Indeed/LinkedIn) |
linkedin_company_ids | 字符串 | "" | 逗号分隔的 LinkedIn 公司 ID |
user_agent | 字符串 | "" | 自定义 User-Agent 请求头 |
verbose | 下拉选择 | 1 | 日志级别(0=仅错误, 1=警告, 2=信息) |
proxies | 字符串 | "" | 代理地址(留空使用平台内置代理) |
每行结果包含 35 个字段:
| 分类 | 字段 |
|---|---|
| 职位标识 | id、site、job_url、job_url_direct |
| 职位信息 | title、company、location、date_posted、job_type、is_remote |
| 薪资 | salary_source、interval、min_amount、max_amount、currency |
| 职位详情 | job_level、job_function、listing_type、description |
| 公司信息 | company_industry、company_url、company_logo、company_url_direct、company_addresses、company_num_employees、company_revenue、company_description、company_rating、company_reviews_count |
| 技能与经验 | skills、experience_range、emails |
| 其他 | vacancy_count、work_from_home_type |
| 状态 | status、error |
三种代理模式(按优先级排列):
proxies 参数(如 socks5://user:pass@host:port)PROXY_AUTH 环境变量| 平台 | 解决方案 |
|---|---|
| ZipRecruiter | 被 Cloudflare WAF 拦截,暂无解决方案 |
| Glassdoor | 尝试不同的地点格式(如用 "USA" 代替 "New York") |
| Google Jobs | 使用 google_search_term 并从 Google Jobs 界面复制搜索语法 |
| Bayt | 被反机器人机制拦截,暂无解决方案 |
| Naukri | 需要验证码,暂无解决方案 |
| BDJobs | 上游 Bug,等待 JobSpy 更新或从搜索中排除 |
results_wantedproxies 参数使用轮换代理| 包名 | 用途 |
|---|---|
python-jobspy | 多平台职位聚合爬虫 |
pandas | DataFrame 数据处理 |
PySocks | SOCKS5 代理支持 |
grpcio | CoreClaw SDK gRPC 通信 |
protobuf | Protocol Buffers 运行时 |
python-dateutil | 日期解析 |
本 Worker 封装了 JobSpy,其遵循 MIT 许可证。