北京医院编制校招信息自动监控与推送系统

📅 2026/7/8 13:25:34
北京医院编制校招信息自动监控与推送系统
北京医院编制校招信息自动监控与推送系统项目背景用户朋友为北京中医药大学2027届应届毕业生需持续关注北京市公立医院带编制的校招信息。现需要一个自动化脚本定期从多个渠道抓取招聘更新去重整理后推送给用户。核心需求1. 信息采集从以下渠道定期抓取招聘公告重点关注含编制“事业编”“事业单位”公开招聘等关键词的岗位渠道 A北京市事业单位公开招聘服务平台地址https://rsj.beijing.gov.cn/ → “个人办事” → “北京市事业单位公开招聘服务平台”采集频率每日 1 次采集内容公告标题、发布日期、岗位列表、报名链接过滤条件招聘单位包含医院“卫生”中医等关键词渠道 B北京卫生人才网地址http://www.bjwsrc.cn/ → “招聘信息” 和 “通知公告” 栏目采集频率每日 1 次采集内容公告标题、发布日期、所属区/单位、详情链接过滤条件岗位涉及中医、中药、针灸、推拿、护理等中医药相关专业渠道 C目标医院官网招聘栏目需监控以下医院的招聘/人才引进页面首都医科大学附属北京中医医院https://www.bjzhongyi.com/gzb_rczp北京中医药大学东直门医院https://www.dzmyy.com.cn/ 信息公开→招聘信息北京中医药大学东方医院http://www.dongfangyy.com.cn/ 信息公开→招聘信息中国中医科学院西苑医院https://www.xyhospital.com/ 人才招聘中国中医科学院广安门医院https://www.gamhospital.ac.cn/ 人才招聘中国中医科学院望京医院https://www.wjhospital.com.cn/ 人才招聘北京中医药大学毕业就业网http://jy.bucm.edu.cn/采集频率每日 1 次采集内容公告标题、发布日期、岗位名称及专业要求、报名方式及截止日期渠道 D区卫健委官网统招信息需监控以下区卫健委的招聘公告页面西城区卫健委https://wjw.beijing.gov.cn/ → 搜索西城区相关海淀区卫健委朝阳区卫健委丰台区卫健委东城区卫健委通州区卫健委采集频率每周 2 次区级统招发布周期较长采集内容统招公告标题、岗位数量、报名时间、报名入口过滤条件仅保留含医院及中医药相关岗位的公告渠道 E微信公众号如有能力抓取丁香人才卫人就业网健康北京北京市卫健委官方号北京人社采集频率每日 1 次说明微信渠道抓取难度较大若无法实现可降级为仅监控前四个网页渠道2. 数据处理去重逻辑以公告标题 发布日期 来源渠道组合为唯一标识同一公告在不同渠道出现时保留信息最完整的来源其他标记为重复已推送过的信息不再重复推送维护已推送记录本地存储SQLite 或 JSON 文件信息提取与结构化每条招聘信息提取以下字段公告标题发布日期来源渠道平台名称详情链接URL招聘单位岗位数量如有专业要求是否涉及中医药相关专业招聘对象应届生/社会人员/不限户口要求是否要求京籍报名起止日期报名方式网址/邮箱/现场是否明确含编制是/否/未注明智能标注 编制明确公告中明确出现事业编制编制内等字样 编制待确认公告中出现事业单位公开招聘但未明确写编制或为卫健委统招通常有编 非编制公告明确写非事业编“合同制”派遣等⭐ 推荐标记同时满足编制明确/待确认 招收应届生 中医药相关专业的岗位3. 推送机制推送方式方式一优先邮件推送发送至用户指定邮箱方式二备选通过 Server酱 / Bark / 企业微信机器人 等推送到微信方式三兜底生成 Markdown 文件存至本地指定目录推送频率每日汇总推送 1 次时间为每日 18:00如当日无新信息发送今日无新增校招信息的简短通知推送格式Markdown 北京医院编制校招日报 - 2026-07-07━━━━━━━━━━━━━━━━━━⭐ 重点推荐编制 应届生 中医药相关1.【编制明确】首都医科大学附属北京中医医院2026年公开招聘 发布2026-07-05 岗位中医岗3人、中药岗2人 招聘对象应届毕业生 户口非京生源可报 ⏰ 报名截止2026-07-20 详情https://… 报名方式官网在线投递━━━━━━━━━━━━━━━━━━ 编制明确2.【编制明确】西城区卫健系统2026年第二批公开招聘 发布2026-07-06 岗位共150个岗位含广安门中医院等 招聘对象应届生 社会人员 户口应届生不限社会人员需京籍 ⏰ 报名截止2026-07-25 详情https://… 报名方式北京卫生人才网在线报名━━━━━━━━━━━━━━━━━━ 编制待确认当日无新增━━━━━━━━━━━━━━━━━━ 数据来源事业单位公开招聘平台 / 北京卫生人才网 / 各医院官网 / 区卫健委 本次新增 2 条累计监控 47 条已过期移除 12 条4. 定时执行使用 cron 或系统定时任务每日 17:30 触发抓取18:00 完成整理并推送首次运行时抓取各渠道最近 30 天的公告作为基线数据但不推送仅入库存档从第二次运行开始仅推送相对基线新增的信息5. 异常处理网页结构变化导致抓取失败时记录错误日志并在推送中附加告警“⚠️ 渠道X抓取异常请人工检查”推送失败时如邮件发送失败将内容写入本地文件./failed_pushes/YYYY-MM-DD.md并在下次推送时附带提醒网络超时重试 3 次间隔 10s技术要求语言与框架Python 3.10网页抓取requests BeautifulSoup必要时使用 Playwright 处理动态页面数据存储SQLite轻量本地库定时任务APScheduler 或系统 cron推送smtplib邮件 requestsServer酱/Bark等配置文件使用config.yaml管理所有可配置项# 推送配置push:method:email# email / serverchan / bark / wecom / local_fileemail:smtp_host:smtp.xxx.comsmtp_port:465sender:xxxxxx.compassword:xxxreceiver:xxxxxx.comserverchan:sendkey:xxxbark:url:https://api.day.app/xxxlocal_file:output_dir:./output# 监控渠道开关channels:platform_bjrsj:true# 北京市事业单位公开招聘平台bjwsrc:true# 北京卫生人才网hospital_official:true# 各医院官网district_wjw:true# 区卫健委wechat:false# 微信公众号默认关闭难度大# 抓取频率小时schedule:platform_bjrsj:24bjwsrc:24hospital_official:24district_wjw:48wechat:24# 过滤关键词filter:include_keywords:-中医-中药-针灸-推拿-骨伤-康复-护理-药学-医学-卫生-医院exclude_keywords:-合同制-劳务派遣-非事业编-科研助理-博士后# 专业匹配用户朋友的专业根据实际情况修改target_majors:-中医学-中药学-针灸推拿学-中医骨伤科学-中西医临床医学# 数据存储storage:db_path:./data/jobs.dblog_path:./logs/ 项目结构 beijing-hospital-job-monitor/ ├── config.yaml# 配置文件├── main.py# 主入口调度抓取 → 处理 → 推送├── crawlers/ │ ├── base.py# 爬虫基类│ ├── bjrsj_platform.py# 北京市事业单位公开招聘平台│ ├── bjwsrc.py# 北京卫生人才网│ ├── hospital_official.py# 各医院官网│ ├── district_wjw.py# 区卫健委│ └── wechat.py# 微信公众号可选├── processor/ │ ├── dedup.py# 去重逻辑│ ├── extractor.py# 信息提取与结构化│ └── tagger.py# 编制标注 推荐标记├── pusher/ │ ├── base.py# 推送基类│ ├── email_pusher.py# 邮件推送│ ├── serverchan.py# Server酱推送│ ├── bark.py# Bark推送│ └── local_file.py# 本地文件输出├── db/ │ ├── models.py# 数据模型│ └── store.py# SQLite 读写├── templates/ │ └── daily_report.md# 推送模板├── data/# 数据库文件目录├── logs/# 日志目录├── output/# 本地文件推送目录└── requirements.txt 注意事项 反爬策略各渠道均为政务/事业单位网站请求频率控制在合理范围每次请求间隔 ≥ 3 秒设置合理的 User-Agent 动态页面北京市事业单位公开招聘平台可能使用动态加载如 requests 无法获取内容切换为 Playwright 编码问题部分政务网站使用 GBK 编码注意响应内容的编码处理 数据安全config.yaml 中含邮箱密码等敏感信息加入 .gitignore 长期维护网页结构可能变化每个爬虫模块需做好异常捕获单个渠道失败不影响其他渠道运行---这份需求文档覆盖了渠道、抓取逻辑、数据处理、推送格式和项目结构。你发给 Codex 后它可以根据这个规格直接生成可运行的代码。有几个地方你可能需要根据实际情况调整-target_majors填入你朋友的实际专业-push.method选一个你最方便的推送方式-channels.wechat微信抓取难度大建议先关闭跑通网页渠道后再考虑