demo.py 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. import requests
  2. # 目标请求地址
  3. url = 'http://183.220.37.46:23424/file_parse'
  4. # 请求头
  5. headers = {
  6. 'accept': 'application/json'
  7. }
  8. # 构建表单数据和文件
  9. files = {
  10. # 各种表单参数
  11. 'return_middle_json': (None, 'false'),
  12. 'return_model_output': (None, 'false'),
  13. 'return_md': (None, 'true'),
  14. 'return_images': (None, 'false'),
  15. 'end_page_id': (None, '99999'),
  16. 'parse_method': (None, 'auto'),
  17. 'start_page_id': (None, '0'),
  18. 'lang_list': (None, 'ch'),
  19. 'output_dir': (None, './output'),
  20. 'server_url': (None, 'string'),
  21. 'return_content_list': (None, 'false'),
  22. 'backend': (None, 'hybrid-auto-engine'),
  23. 'table_enable': (None, 'true'),
  24. 'response_format_zip': (None, 'false'),
  25. 'formula_enable': (None, 'true'),
  26. # 文件上传字段(核心)
  27. 'files': open(r'/D:/wx_work/sichuan_luqiao/lu_sgsc_testfile/施工方案/301_四川川交路桥有限责任公司秦唐高速公路唐山段ZT1合同项目部.pdf', 'rb')
  28. }
  29. try:
  30. # 发送 POST 请求
  31. response = requests.post(
  32. url=url,
  33. headers=headers,
  34. files=files,
  35. # 设置超时时间,避免请求一直挂起
  36. timeout=600
  37. )
  38. # 打印响应结果
  39. print(f"响应状态码: {response.status_code}")
  40. print(f"响应内容: {response.json()}")
  41. except FileNotFoundError as e:
  42. print(f"错误:文件未找到 - {e}")
  43. except requests.exceptions.Timeout as e:
  44. print(f"错误:请求超时 - {e}")
  45. except requests.exceptions.RequestException as e:
  46. print(f"错误:请求失败 - {e}")
  47. except ValueError as e:
  48. print(f"错误:响应不是有效的JSON - {e}")
  49. print(f"原始响应内容: {response.text}")
  50. finally:
  51. # 确保文件句柄关闭
  52. if 'files' in locals() and hasattr(files['files'], 'close'):
  53. files['files'].close()