data
这些 .ini 文件是一个招聘职位自动化抓取系统(Web Scraper / 爬虫系统)的底层配置文件。
简单来说,这是一个用来“指导”爬虫程序去各大公司官网或招聘平台(如腾讯、阿里、Cloudflare、IBM等)自动抓取招聘岗位信息的任务清单和规则库。
以下是对这些配置文件核心作用和参数的详细拆解:
核心作用
这个系统通过读取这些配置,实现了对不同公司招聘页面的定制化抓取。因为每个公司的招聘网站结构都不同,系统需要知道:
- 去哪里抓取?(社会招聘、校园招聘、实习生招聘的链接)
- 用哪套规则解析网页?(对应的
template和func_name) - 抓取后归属到哪个公司名下?(公司名称、Logo等基本信息)
配置参数解析
我们将每个公司节点(如 com_00289)里包含的 JSON 字段拆开来看,它们分别代表了爬虫运行所需的具体指令:
| 字段名 | 具体含义与作用 | 示例解读 |
|---|---|---|
com_name / com_webname |
公司全称与前端展示名称 | 腾讯控股有限公司 / 腾讯招聘 |
com_logo |
公司Logo的图片链接 | 抓取后展示在自建平台上的企业图标 |
urls |
核心抓取目标库,按招聘类型分类的URL集合 | shezhao = 社招 xiaozhao = 校招 shixi = 实习 |
pre_open_url |
预加载链接 / 初始访问链接 | 用于绕过反爬或加载初始 Cookie/Token 的入口页面 |
template |
页面结构解析模板 | template_50075(告诉程序用哪套HTML/JSON解析规则去提取职位名、薪资、要求等) |
func_name |
绑定的自定义 Python/抓取函数名 | gen_50181(针对特殊反爬或复杂翻页逻辑写的专属执行脚本) |
json_domain |
接口请求的根域名 | 很多现代招聘网站使用前后端分离,爬虫可能直接去请求该域名下的 JSON 接口 |
hd_all_location |
岗位覆盖的城市/地区字典 | 用于在抓取时匹配或标准化工作地点(如将“京”映射为“北京”) |
max_parent_level / click_type |
爬虫行为控制参数 | 控制爬虫向下钻取的层级,或定义模拟点击的方式(如 current 表示在当前页操作) |
系统工作流程推演
基于这些配置,该爬虫系统的工作流程大概是这样的:
- 任务调度:系统读取
setting_com_01.ini到05.ini,获取所有需要抓取的公司列表(从com_00289到com_00468等)。 - 执行路由:针对某一家公司(例如
com_00336阿里巴巴),系统先访问pre_open_url获取页面权限。 - 定向抓取:依次遍历
urls里的社招、校招链接。 - 数据解析:调用对应的
func_name(如gen_50216) 和template(如template_50090),将网页中的非结构化职位数据转化为结构化的 JSON 数据。 - 入库展示:将带有
com_name和com_logo的职位数据存入你自己的数据库,供用户搜索。
总结来说,这是一个架构非常成熟、高度模块化的分布式招聘爬虫配置中心。 只要往里面新增类似的节点信息,爬虫就能立刻开始抓取新公司的职位数据,而无需大规模修改主程序代码。
项目分区导航:qwen_api ⬅️ | 10-data | ➡️ 00-SpringBoot框架课
💬 评论