Files
ztb/config.py

459 lines
19 KiB
Python
Raw Normal View History

# -*- coding: utf-8 -*-
"""
爬虫配置文件
"""
# 浙江省公共资源交易中心
ZHEJIANG_CONFIG = {
"name": "浙江省公共资源交易中心",
"base_url": "https://ggzy.zj.gov.cn",
"api_url": "https://ggzy.zj.gov.cn/inteligentsearch/rest/esinteligentsearch/getFullTextDataNew",
# 交易领域代码
"categories": {
"工程建设": "002001",
"政府采购": "002002",
"土地使用权": "002003",
"国有产权": "002004",
"矿业权": "002006",
"其他交易": "002007",
},
# 公告类型代码(工程建设)
"notice_types": {
"项目登记信息": "002001008",
"招标计划": "002001013",
"招标文件公示": "002001011",
"招标公告": "002001001",
"资格预审公告": "002001002",
"澄清修改": "002001006",
"资格预审结果": "002001007",
"开标结果公示": "002001003",
"中标候选人公示": "002001004",
"中标结果公告": "002001005",
"合同信息公开": "002001009",
}
}
# 台州公共资源交易中心
TAIZHOU_CONFIG = {
"name": "台州公共资源交易中心",
"base_url": "https://ggzy.tzztb.zjtz.gov.cn",
"api_url": "https://ggzy.tzztb.zjtz.gov.cn/rest/secaction/getSecInfoListYzm",
"site_guid": "7eb5f7f1-9041-43ad-8e13-8fcb82ea831a",
# 交易领域
"categories": {
"工程建设": "002001",
"政府采购": "002002",
"产权交易": "002003",
"拓展资源": "002004",
"土地交易": "002005",
},
# 公告类型(工程建设)
"notice_types": {
"招标计划公示": "002001014",
"招标文件公示": "002001001",
"招标公告": "002001002",
"资格预审公告": "002001003",
"中标候选人公示": "002001005",
"中标结果公告": "002001006",
"保证金退还公示": "002001008",
}
}
# 爬虫设置(云端部署安全参数)
SPIDER_CONFIG = {
"page_size": 20, # 每页数量
"max_pages": 10, # 最大爬取页数
# --- 延迟控制 ---
"delay_min": 3, # 列表页最小延迟(秒)
"delay_max": 6, # 列表页最大延迟(秒)
"detail_delay_min": 2, # 详情页最小延迟(秒)
"detail_delay_max": 5, # 详情页最大延迟(秒)
# --- 安全阈值 ---
"timeout": 30, # HTTP 超时时间(秒)
"max_retries": 3, # 单次请求最大重试次数
"max_consecutive_errors": 5, # 连续失败熔断阈值(降低=更早停止)
"max_total_requests": 300, # 单次运行最大请求数
"requests_per_minute": 10, # 每分钟最大请求数(超出自动减速)
}
# 数据存储路径
DATA_DIR = "data"
# ============ DeepSeek AI 处理配置 ============
DEEPSEEK_API_KEY = "sk-7b7211ee80b84000beebfa74a599ba13"
PROCESSING_CONFIG = {
"temp_dir": "temp_files", # 临时文件目录
"output_dir": "data", # AI处理结果输出目录
"request_timeout": 90, # DeepSeek API 超时(秒)
"max_content_length": 120000, # 发送给 DeepSeek 的最大内容长度
"api_delay": 1, # API 调用间隔(秒)
}
# 区域配置:按「站点+公告类型」定义需要AI提取的字段
REGION_CONFIGS = {
# key 格式: "site:notice_type"
"zhejiang:招标文件公示": {
"region_name": "浙江招标文件公示",
"link_field": "招标文件链接", # 爬虫"链接"映射到的字段名
"ai_fields": [
"类型", "地区", "投标截止日", "最高投标限价", "最高限价",
"资质要求", "业绩要求", "评标办法", "评分说明与资信评分标准",
"有无答辩", "招标人", "项目概况", "造价付款方式", "批准文号",
],
},
"zhejiang:招标公告": {
"region_name": "浙江招标公告",
"link_field": "公告链接",
"ai_fields": ["批准文号", "投标截止日"],
},
"zhejiang:澄清修改": {
"region_name": "浙江澄清修改",
"link_field": "澄清文件链接",
"ai_fields": ["批准文号"],
},
"zhejiang:招标计划": {
"region_name": "浙江招标计划",
"link_field": "公告链接",
"ai_fields": ["批准文号", "类型", "地区", "招标时间"],
},
"taizhou:招标文件公示": {
"region_name": "台州招标文件公示",
"link_field": "招标文件链接",
"ai_fields": [
"类型", "地区", "批准文号", "投标截止日", "预估金额",
],
},
"taizhou:招标计划公示": {
"region_name": "台州招标计划",
"link_field": "公告链接",
"ai_fields": ["批准文号", "类型", "地区", "招标时间"],
},
}
# DeepSeek 提示词模板
DEEPSEEK_PROMPTS = {
"批准文号": """请从招标公告中提取项目批准文号。
批准文号的常见格式
- 台建招备[2026]XXX号
- 浙建计[2026]XXX号
- 2302-XXXXXX-XX-XX-XXXXXX项目代码格式
查找关键词批准文号备案登记号项目代码项目编号招标编号
请直接返回批准文号不要其他解释
如果未找到请返回"文档未提及"""",
"资质要求": """从招标文件中提取企业资质等级。
搜索策略
1. 直接查找资质要求资质条件资质等级施工总承包专业承包
2. 查找章节投标人须知前附表招标公告资格审查条件
3. 特别注意必须检查PDF附件中的内容附件中通常包含详细的资质要求
4. 如果写"见投标人须知前附表"或类似引用请必须查找并提取前附表中的具体资质要求
5. 如果前附表写"见招标公告"请在招标公告章节查找
重要只返回资质类型和等级不要任何其他内容
正确格式示例
建筑工程施工总承包三级及以上
市政公用工程施工总承包二级及以上
返回规则
- 找到具体资质等级 返回资质等级
- 文档写"见招标公告"但招标公告在平台上 返回"详见招标公告"
- 确实未找到任何相关信息 返回"文档未提及""",
"业绩要求": """请从招标文件中提取投标人业绩要求。
搜索策略
1. 重点查找投标人资格要求业绩要求投标人须知前附表招标公告评分标准
2. 特别注意必须检查PDF附件中的内容附件中通常包含详细的业绩要求
3. 关注关键词业绩工程经验类似项目同类工程中标业绩类似工程业绩
4. 注意时间范围要求近X年自20XX年以来
5. 特别注意如果文档中提到"见投标人须知前附表"或类似引用请查找并提取前附表中的业绩要求
6. 如果业绩要求在评分标准中请从评分标准中提取
必须提取的内容
- 业绩的时间范围要求
- 业绩的具体要求工程类型规模金额等
- 业绩数量要求
- 项目负责人业绩要求如有
返回规则
- 找到具体业绩要求 返回业绩要求内容
- 文档写"见招标公告"但招标公告在平台上 返回"详见招标公告"
- 确实未找到 返回"文档未提及""",
"评标办法": """请分析招标文件,判断采用的评标办法。
必须检查以下内容
1. 投标人须知前附表中的勾选项/
2. "第三章 评标办法"的章节标题和具体内容
3. 附件中的评标定标章节"评标定标办法""评标细则"
4. 其他相关章节中关于评标方法的描述
分析要点
- 仔细阅读附件中评标定标章节的详细内容
- 关注评标方法的具体定义和操作流程
- 确认是否采用评定分离方式
- 区分综合评估法经评审的最低投标价法等不同类型
输出规则评定分离优先
- 如果文档中出现"☑采用评定分离""评定分离方式招标"或附件中明确说明采用评定分离 返回"评定分离"
- 综合评估法含所有子类型资信商务评估法合理低价法 返回"综合评估法"
- 经评审的最低投标价法 返回"经评审的最低投标价法"
只能返回以下值之一
1. 评定分离
2. 综合评估法
3. 经评审的最低投标价法
4. 文档未提及
只返回上述值之一不要任何其他文字""",
"评分说明与资信评分标准": """请从招标文件中提取评分说明和资信评分标准。
核心原则
- 只提取文档中明确存在的具体评分规则严禁推测或编造
- 如果只有章节标题但没有具体评分细则必须返回"文档未提及"
搜索策略
1. 全面查找评分说明评分标准评分办法评标细则评标办法评审办法
2. 关注章节第三章 评标办法评标定标办法评分标准商务标评审技术标评审资信标评审
3. 关键词扩展评分基准价商务标技术标资信标分值得分权重评分办法评标基准价报价得分
4. 特别关注信用评价信用等级信用分信誉分诚信分企业信用项目负责人信用
必须提取的内容
1. 总体评分结构各部分分值分配
- 必须在最前面总结总分结构总分 =资信标 X分+技术标 X分+商务标 X分
- 确保分值总和为100分
2. 基准价计算方法
3. 信用分详细细则包括企业和项目负责人
- 信用等级划分标准如A/B/C/D/E级对应的具体分数范围如110分以上(含110分)105-110(含105分)
- 各等级对应的具体得分如A级3分B级2.5分等
- 未取得信用评价的得分
- 特别关注项目负责人信用评价分的等级和分数要求
- 必须提取完整的分数范围和对应分数A类110-120分2.8120-130分2.85
- 必须提取完整的等级划分A级:110分以上(含110分)B级:105-110(含105分)C级:100-105(含100分)D级:90-100(含90分)E级:90分以下
- 必须提取附件中的信用等级划分标准台州市住房和城乡建设局关于公布建筑工程和市政公用工程企业信用等级划分标准的通知中的等级划分
- 必须提取具体的分数阈值如110分以上含110分105-110含105分
示例输出
总分=资信标15分+技术标65分+商务标20分评标基准价=最高限价×K值(K=80%-95%)商务标20分(报价得分采用线性插值法)技术标65分(打分制)资信标15分其中企业信用分A级110分以上3分B级105-110分2.5C级100-105分2分D级90-100分1.5E级90分以下1分未取得0.5项目负责人信用分A级110分以上2分B级105-110分1.5C级100-105分1分D级90-100分0.5E级90分以下0.3未取得0.1
信用分提取示例
投标人信用评价分A类110-120分2.8120-130分2.85130-140分2.9140-150分3分B类105-106分2.55106-107分2.6107-108分2.65108-109分2.7109-110分2.75C类2.3D类1.8E类1.3未取得0.8
返回规则
- 找到具体评分规则 用简洁语言总结信用分部分需详细列出
- 文档中只有章节目录无具体内容 返回"文档未提及"
- 无法确定 返回"文档未提及"严禁编造""",
"有无答辩": """请判断招标文件中是否要求"现场答辩""现场面试"
关键词答辩面试现场汇报演示
如果明确要求答辩/面试请返回""
如果明确说明不需要请返回""
如果未提及请返回""""",
"项目概况": """请从招标文件中提取项目概况信息。
查找章节项目概况工程概况建设规模招标范围
必须提取
1. 建设地点
2. 建设规模长度×宽度面积层数等
3. 招标范围
4. 计划工期
5. 质量要求
请按以下格式输出
建设地点XX建设规模XX招标范围XX计划工期XX日历天质量要求XX
如果未找到请返回"文档未提及"""",
"类型": """请根据项目信息判断项目类型。
只返回以下类型之一
施工类需细分总承包市政安装装饰公路水利电力
其他类型勘察设计监理采购咨询其他
判断规则
1. 名称含"设计"设计"监理"监理"勘察/测量"勘察"EPC/总承包"总承包
2. 施工类细分道路/桥梁/排水/管网市政公路/国道公路装修/幕墙装饰机电/电气安装房屋/学校/医院总承包水利/河道/水库水利电力/变电/输电电力
只返回类型名称不要其他解释""",
"地区": """请从招标文件中提取项目所在地区。
搜索策略(按优先级):
1. 直接查找工程地点建设地点项目位置
2. 从招标人名称提取
3. 从信息来源提取
4. 从项目名称提取
输出格式+/"金华市金东区""台州市椒江区"
如果只能确定市级返回市名
如果确实无法提取请返回"文档未提及"""",
"最高限价": """请从招标文件中提取价格信息,必须返回具体数字金额。
按优先级查找
1. 最高投标限价
2. 招标控制价
3. 最高限价上限价
4. 拨款控制价控制价
5. 合同估算价预算金额
请直接返回金额带上单位万元或元
示例1234.56万元2466285
如果未提及任何价格信息请返回"文档未提及"""",
"最高投标限价": """请从招标文件中提取最高投标限价(或招标控制价)。
查找关键词最高投标限价招标控制价最高限价上限价控制价包干总价
请直接返回金额带上单位万元或元
示例1234.56万元2466285
如果未提及请返回"文档未提及"""",
"预估金额": """请从文档中提取项目预估金额。
查找关键词预估金额预计投资估算金额预算金额项目总投资
请直接返回金额带上单位万元或元
示例1234.56万元2466285
如果未提及请返回"文档未提及"""",
"投标截止日": """请从招标文件中提取投标截止时间。
搜索关键词投标截止时间投标截止日截止时间开标时间递交截止时间
重要规则
1. 绝对禁止推测或编造日期
2. 如实提取文档中的原始日期
3. 日期完整则返回标准格式 YYYY-MM-DD
4. 日期不完整则返回原始格式
5. 如果遇到日期范围"2026年3月1日至3月10日"请提取最后一个日期作为投标截止日
如果未提及请返回"文档未提及"""",
"招标人": """请从招标文件中提取招标人信息。
查找关键词招标人招标单位业主单位建设单位
请直接返回招标人名称不要其他解释
如果未提及请返回"文档未提及"""",
"造价付款方式": """请从招标文件的合同条款中提取付款方式信息。
查找章节合同条款通用条款专用条款付款方式工程款支付
必须提取以下四项只提取百分比数字
1. 预付款比例
2. 进度款支付比例
3. 结算款比例
4. 质保金比例
输出格式预付款XX%进度款XX%结算款XX%质保金XX%
如果某项未提及用""代替
如果确实未找到付款相关内容请返回"文档未提及"""",
"招标时间": """请从文档中提取计划招标时间。
查找关键词计划招标时间预计招标时间招标时间计划开标时间预计开标时间
请直接返回招标时间不要其他解释
如果未找到请返回"文档未提及"""",
}
# ============ 简道云配置 ============
JDY_CONFIG = {
"api_key": "JmxuXmkew33mvQttRD3ftSfQoOEX6R9J",
"forms": {
"台州招标文件公示": {
"app_id": "6965f35749afd00072b33c4a",
"entry_id": "6965f35a962fab0113b87876",
"field_mapping": {
"项目发布时间": "_widget_1768289120174",
"批准文号": "_widget_1768289120166",
"名称": "_widget_1768289120167",
"类型": "_widget_1768289120168",
"投标截止日": "_widget_1768289120169",
"预估金额": "_widget_1768289120170",
"招标文件链接": "_widget_1768349415371",
"招标阶段": "_widget_1768289432065",
},
},
"台州招标计划": {
"app_id": "6965f35749afd00072b33c4a",
"entry_id": "6965f35a962fab0113b87876",
"field_mapping": {
"项目发布时间": "_widget_1768289120174",
"批准文号": "_widget_1768289120166",
"名称": "_widget_1768289120167",
"类型": "_widget_1768289120168",
"公告链接": "_widget_1768349415371",
"招标阶段": "_widget_1768289432065",
},
},
"浙江招标文件公示": {
"app_id": "6965f35749afd00072b33c4a",
"entry_id": "6965f50e955c9b638888e7d2",
"field_mapping": {
"发布时间": "_widget_1768289557651",
"批准文号": "_widget_1768289557665",
"名称": "_widget_1768349686082",
"类型": "_widget_1768289557652",
"地区": "_widget_1768289557653",
"投标截止日": "_widget_1768289557654",
"最高投标限价": "_widget_1768289557655",
"最高限价": "_widget_1768289557655",
"资质要求": "_widget_1768289557656",
"业绩要求": "_widget_1768289557657",
"评标办法": "_widget_1768289557658",
"评分说明与资信评分标准": "_widget_1768289557659",
"有无答辩": "_widget_1768289557660",
"招标人": "_widget_1768289557661",
"项目概况": "_widget_1768289557663",
"造价付款方式": "_widget_1768289557664",
"招标文件链接": "_widget_1768290058232",
"招标阶段": "_widget_1768289909408",
},
},
"浙江招标公告": {
"app_id": "6965f35749afd00072b33c4a",
"entry_id": "69703283d126285ded9ac1be",
"field_mapping": {
"发布时间": "_widget_1768289557651",
"批准文号": "_widget_1768289557665",
"名称": "_widget_1768349686082",
"投标截止日": "_widget_1768289557654",
"公告链接": "_widget_1768290058232",
"招标阶段": "_widget_1768289909408",
},
},
"浙江澄清修改": {
"app_id": "6965f35749afd00072b33c4a",
"entry_id": "697085af8e631aae04bb856c",
"field_mapping": {
"发布时间": "_widget_1768289557651",
"批准文号": "_widget_1768289557665",
"名称": "_widget_1768349686082",
"澄清文件链接": "_widget_1768290058232",
"招标阶段": "_widget_1768289909408",
},
},
},
}