Files
ccdi/doc/scripts/test_import.py
2026-01-29 22:03:42 +08:00

98 lines
2.8 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import requests
import json
# 配置
BASE_URL = "http://localhost:8080"
LOGIN_URL = f"{BASE_URL}/login/test"
IMPORT_URL = f"{BASE_URL}/dpc/intermediary/importPersonData"
# 登录获取token
print("=" * 60)
print("测试个人中介Excel导入功能")
print("=" * 60)
login_data = {
"username": "admin",
"password": "admin123"
}
print("\n1. 登录系统...")
try:
response = requests.post(LOGIN_URL, json=login_data)
print(f" 登录响应状态码: {response.status_code}")
if response.status_code == 200:
result = response.json()
print(f" 登录响应: {json.dumps(result, ensure_ascii=False, indent=2)}")
token = result.get("token")
if token:
print(f" ✓ 成功获取token: {token[:50]}...")
else:
print(" ✗ 登录失败未获取到token")
exit(1)
else:
print(f" ✗ 登录失败:{response.text}")
exit(1)
except Exception as e:
print(f" ✗ 登录异常: {e}")
exit(1)
# 测试导入
print("\n2. 准备导入Excel文件...")
files = {
'file': ('个人中介黑名单测试数据_1000条.xlsx',
open('doc/个人中介黑名单测试数据_1000条.xlsx', 'rb'),
'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet')
}
headers = {
'Authorization': f'Bearer {token}'
}
params = {
'updateSupport': 'false'
}
print(f" 导入URL: {IMPORT_URL}")
print(f" 文件名: 个人中介黑名单测试数据_1000条.xlsx")
print(f" 更新支持: false")
print("\n3. 发送导入请求...")
try:
response = requests.post(IMPORT_URL, files=files, headers=headers, params=params)
print(f" 导入响应状态码: {response.status_code}")
print(f" 响应头: {dict(response.headers)}")
if response.status_code == 200:
result = response.json()
print(f"\n 导入结果:")
print(f" {json.dumps(result, ensure_ascii=False, indent=2)}")
if result.get("code") == 200:
print(f"\n ✓ 导入成功!")
print(f" 消息: {result.get('msg')}")
else:
print(f"\n ✗ 导入失败!")
print(f" 错误代码: {result.get('code')}")
print(f" 错误消息: {result.get('msg')}")
else:
print(f"\n ✗ HTTP错误: {response.status_code}")
print(f" 响应内容: {response.text}")
except requests.exceptions.ConnectionError:
print(f"\n ✗ 连接失败:无法连接到后端服务器")
print(f" 请确认后端服务已启动在 {BASE_URL}")
except requests.exceptions.Timeout:
print(f"\n ✗ 请求超时")
except Exception as e:
print(f"\n ✗ 导入异常: {e}")
import traceback
traceback.print_exc()
finally:
files['file'][1].close()
print("\n" + "=" * 60)
print("测试完成")
print("=" * 60)