77 lines
1.9 KiB
Python
77 lines
1.9 KiB
Python
# -*- coding: utf-8 -*-
|
|
"""
|
|
测试上传招标公告数据到简道云
|
|
"""
|
|
import json
|
|
import logging
|
|
import os
|
|
|
|
# 添加当前目录到模块搜索路径
|
|
import sys
|
|
sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
|
|
|
|
# 导入简道云上传器
|
|
from processors.jiandaoyun import JiandaoyunUploader
|
|
|
|
# 配置日志
|
|
logging.basicConfig(
|
|
level=logging.INFO,
|
|
format='%(asctime)s - %(levelname)s - %(message)s'
|
|
)
|
|
logger = logging.getLogger(__name__)
|
|
|
|
def upload_test_data():
|
|
"""
|
|
上传测试数据到简道云
|
|
"""
|
|
# 最新的AI处理结果文件
|
|
json_file = "data/浙江招标公告_AI处理_20260224_133102.json"
|
|
region_name = "浙江招标公告"
|
|
|
|
logger.info(f"开始上传 {json_file} 到简道云")
|
|
|
|
# 1. 读取JSON文件
|
|
if not os.path.exists(json_file):
|
|
logger.error(f"JSON文件不存在: {json_file}")
|
|
return
|
|
|
|
try:
|
|
with open(json_file, 'r', encoding='utf-8') as f:
|
|
data = json.load(f)
|
|
except Exception as e:
|
|
logger.error(f"读取JSON文件失败: {e}")
|
|
return
|
|
|
|
# 2. 提取记录数据
|
|
records = data.get('data', [])
|
|
if not records:
|
|
logger.error("JSON文件中没有数据")
|
|
return
|
|
|
|
logger.info(f"读取完成,共 {len(records)} 条记录")
|
|
|
|
# 3. 上传到简道云
|
|
uploader = JiandaoyunUploader()
|
|
result = uploader.upload_records(region_name, records)
|
|
|
|
# 4. 输出结果
|
|
logger.info(f"上传完成: 成功 {result['success']}, 失败 {result['failed']}")
|
|
|
|
if result['failed'] > 0:
|
|
logger.error("上传失败的记录:")
|
|
for error in result.get('errors', []):
|
|
logger.error(f" - {error}")
|
|
|
|
return result
|
|
|
|
def main():
|
|
"""
|
|
主函数
|
|
"""
|
|
logger.info("=== 测试简道云上传 ===")
|
|
result = upload_test_data()
|
|
logger.info("=== 测试完成 ===")
|
|
|
|
if __name__ == "__main__":
|
|
main()
|