返回 Skill 列表
extension
分类: 数据与分析无需 API Key

订阅浙江招标信息

招标信息监控助手,只处理招投标信息。订阅浙江省公共资源交易服务平台及浙江省政府采购及各地市分站的招标信息, 每日定时增量抓取,可邮件订阅,生成5分钟简报。适用招投标、投标专员、 招标代理、工程公司商机监控、公共资源交易网监控。

person作者: u_c5780dc8hubenterprise

订阅浙江招标信息

浙江省统一招标平台订阅 Skill(v1.0.0 · 作者:莫安来) — 基于 5 年专业团队运行经验升级

这是什么

监控浙江省公共资源交易服务平台(ggzy.zj.gov.cn)、浙江政府采购网及杭州/宁波/温州/湖州/嘉兴/绍兴/金华/衢州/舟山/台州/丽水 11 个地市分站的招标公告(默认推送),招标计划/开标结果/中标结果由用户主动查询时推送。每日定时增量抓取,结构化字段 + PDF 附件解析,生成简报并优先在 WorkBuddy 对话内展示,邮件/企微作为补充。

核心原则

| 原则 | 说明 | |------|------| | 定位窄 | 只做招投标信息监控,不闲聊 | | 增量推 | 只推上次游标之后的新条目,不重发全量 | | 异常透 | 详情页超时/解析失败在简报标红,不假装成功 | | 数据落库 | SQLite 主库 + 简道云双写,落库失败不推送 |

文件结构

订阅浙江招标信息/
├── SKILL.md                  # 指令与行为约束(给大模型看)
├── config.yaml               # 元数据、触发词、定时、参数 schema
├── README.md                 # 本文件
├── assets/
│   ├── parse_rules.json      # 分类解析规则库(建设工程/水利/采购/中标/通用)
│   ├── keywords.txt          # 300+ 行业关键词
│   └── brief_template.md     # 五分钟简报模板
├── scripts/
│   ├── crawl_pipeline.py     # 【绿区】列表页→详情页→字段解析→落库
│   ├── pdf_parser.py         # 【黄区】pdfplumber + OCR 双引擎
│   ├── dedup_store.py        # 【红区】SQLite 写入与去重
│   └── notifier.py           # 【绿区】推送到 WorkBuddy/企微/邮件
├── tests/
│   └── sample_pages/         # 各地市详情页 HTML 样例
└── data/                     # 运行时生成
    ├── tender_monitor.db     # SQLite 数据库
    ├── last_cursor.json      # 各管道游标
    └── latest_brief.md       # 最新简报

分区管理

| 区 | 文件 | 原则 | |----|------|------| | 绿区 | crawl_pipeline.py notifier.py | 日常跑,可随时改动 | | 黄区 | pdf_parser.py | 调试区,改动后需跑样例页回归 | | 红区 | dedup_store.py | 落库接口,轻易不动,改动需 review |

快速开始

1. 安装依赖

pip install requests pdfplumber pdf2image paddleocr pandas beautifulsoup4 lxml pyyaml

PaddleOCR 还需要安装 PaddlePaddle,详见 PaddleOCR 文档。 不装 PaddleOCR 也能跑,扫描件会降级标 manual_partial

2. 运行

# 默认配置(监控全省,仅招标公告)
python scripts/crawl_pipeline.py

# 指定地区和渠道(用户主动查询时用)
python scripts/crawl_pipeline.py --regions 湖州,杭州 --channels 中标结果,开标结果

# 只解析某个 PDF 附件
python scripts/pdf_parser.py /path/to/attachment.pdf

# 手动推送简报
python scripts/notifier.py --brief-file data/latest_brief.md --target 企微群

3. 定时运行

config.yaml 中的 cron 配置(15 7,30 8,0 8 * * *)对应每日 7:15 / 7:30 / 8:00 / 8:30 四趟。挂 WorkBuddy Runtime 定时器自动触发。

数据源

| 源 | 域名 | 覆盖 | |----|------|------| | 浙江省公共资源交易服务平台 | ggzy.zj.gov.cn | 全省 | | 浙江政府采购网 | zfcg.czt.zj.gov.cn | 全省(采购类) | | 杭州分站 | ggzy.hz.gov.cn | 杭州 | | 宁波分站 | ggzy.nb.gov.cn | 宁波 | | 温州分站 | ggzy.wz.gov.cn | 温州 | | 湖州分站 | ggzy.huz.gov.cn | 湖州 | | 嘉兴分站 | ggzy.jx.gov.cn | 嘉兴 | | 绍兴分站 | ggzy.sx.gov.cn | 绍兴 | | 金华分站 | ggzy.jh.gov.cn | 金华 | | 衢州分站 | ggzy.qz.gov.cn | 衢州 | | 舟山分站 | ggzy.zs.gov.cn | 舟山 | | 台州分站 | ggzy.tz.gov.cn | 台州 | | 丽水分站 | ggzy.ls.gov.cn | 丽水 | | 找必达 | zhaobide.com | 全国/浙江招标信息聚合(已接入·真实抓取) | | 杭州建设工程交易 | ggzy.hzctc.hangzhou.gov.cn:18003 | 杭州建设工程(已接入·真实抓取) | | 杭州城建招采 | jczx.hzcjtz.com | 杭州城建工程(已接入·真实抓取) |

接入状态:找必达 / 杭州建设工程交易 / 杭州城建招采 三个新源已实现真实爬虫抓取(列表页→结构化字段,增量去重)。「政府采购」类数据由 浙江政府采购网(zfcg.czt.zj.gov.cn) 覆盖(已在全省源列表)。原拟接入的政采云(b.zhengcaiyun.cn)因阿里云 WAF 交互式滑动验证无法自动化绕过,已从源列表移除。

四类管道

  1. 招标计划 — 年度/季度采购意向、工程招标计划
  2. 招标公告 — 正式招标/竞争性谈判/询价公告(默认唯一推送渠道
  3. 开标结果 — 开标记录表
  4. 中标结果 — 中标/成交公告

推送默认规则:定时推送只发「招标公告」。招标计划 / 开标结果 / 中标结果 不主动推送,仅在用户对话里主动查询(如"上周杭州中标了啥""查一下开标结果")时才抓取并出简报。简报排版紧凑,已去掉招标人、标段编号、字段表。

个性化过滤

config.yamlinputs 中配置:

  • watch_regions:监控地市(多选)
  • keywords:关键词(逗号分隔)
  • min_amount:金额阈值(元)
  • tenderer_whitelist:招标人白名单(逗号分隔,留空则不限)
  • channels:订阅管道(默认仅「招标公告」;其余管道需用户主动查询才推送)

去重策略

  • 主键平台名 + 标段编号 + 发布时间
  • 兜底:标段编号缺省时用 md5(项目名称) + 招标人
  • 游标文件 last_cursor.json 记录各管道最后一条发布时间

PDF 解析

  • 原生 PDF → pdfplumber.extract_text() + extract_tables()
  • 扫描件判定:page.chars 密度 < 50 → 转 300dpi 图 → PaddleOCR → PP-Structure 还原表格
  • 解析状态:auto / manual_partial / manual_full / failed

推送渠道

| 渠道 | 优先级 | 配置 | 说明 | |------|--------|------|------| | WorkBuddy | 默认 / 优先 | 无需配置 | 简报直接输出到对话,原文/附件链接可直接点击打开 | | 企微群 | 补充 | WECOM_BOT_WEBHOOK 环境变量 | 群机器人 webhook 地址 | | 邮件 | 补充 | SMTP_HOST / SMTP_USER / SMTP_PASS / TENDER_NOTIFY_TO | SMTP_SSL, cron 自动发送备份 |

反爬克制

  • UA 池轮换(5 个 UA)
  • 请求间隔 0.5~1.3s(随机抖动)
  • 并发默认 5(最大 10)
  • 遇 429 退避 60s,不绕验证码
  • 详情页超时 15s,不无限重试

与湖州单站版的区别

| 维度 | 湖州单站 | 浙江省 Skill 包 | |------|----------|------------------| | 覆盖 | 1 个站 | 全省 + 11 地市分站 | | 管道 | 招标公告 + 中标结果 | 四类管道分流(默认仅招标公告推送,其余查询才推) | | 存储 | 简道云 | SQLite 主库 + 简道云双写 | | PDF | pdfplumber 单引擎 | pdfplumber + PaddleOCR 双引擎 | | 推送 | WorkBuddy | WorkBuddy 优先,企微/邮件补充 | | 触发 | 手动 | cron 定时 + 对话触发 | | 分区 | 无 | 绿/黄/红三区管理 |