xparse-client 是 TextIn xParse 的官方 Python SDK,提供同步解析、异步任务管理、类型安全的响应模型和完善的错误处理,基于最新版 API 封装。
- PyPI: xparse-client
安装
认证与初始化
SDK 支持多种认证方式(优先级:构造参数 > 环境变量 > .env 文件):API 概览
| 方法 | 说明 | 返回类型 |
|---|---|---|
client.parse.run() | 同步解析文档 | ParseResponse |
client.parse.create_job() | 创建异步解析任务 | AsyncJobResponse |
client.parse.get_job() | 查询异步任务状态 | JobStatusResponse |
client.parse.wait_job() | 轮询等待异步任务完成 | JobStatusResponse |
同步解析
适用于一般大小的文档,直接返回解析结果。解析配置参数
ParseConfig 支持以下配置:
| 参数 | 类型 | 说明 |
|---|---|---|
capabilities.include_hierarchy | bool | 返回元素父子关系 |
capabilities.include_inline_objects | bool | 返回行内对象(公式、手写体、复选框) |
capabilities.include_char_details | bool | 返回字符级坐标和置信度 |
capabilities.include_image_data | bool | 返回图片 URL、MIME 类型、OCR 文本 |
capabilities.include_table_structure | bool | 返回表格行/列/单元格详细结构 |
capabilities.pages | bool | 返回页面元信息列表 |
capabilities.title_tree | bool | 返回文档目录树 |
capabilities.table_view | "markdown" | "html" | 表格视图格式 |
scope.page_range | string | 解析页面范围,如 "1-10" |
document.password | string | 加密 PDF 的密码 |
异步解析
适用于大文件或批量处理场景。创建任务并等待结果
手动查询任务状态
错误处理
SDK 提供了完善的错误分类,方便您精确处理不同的异常情况。错误类型
| 错误类 | 说明 |
|---|---|
XParseClientError | 基础错误类,捕获所有 SDK 错误 |
ValidationError | 客户端参数校验失败 |
AuthenticationError | 认证失败(app-id 或 secret-code 错误) |
PermissionDeniedError | IP 不在白名单 |
InsufficientBalanceError | 余额不足 |
InvalidParameterError | 参数错误 |
UnsupportedFileTypeError | 不支持的文件类型 |
FileSizeError | 文件超过 500MB 限制 |
CorruptedFileError | 文件损坏 |
PasswordProtectedError | PDF 需要密码 |
ServerError | 服务端错误(HTTP 5xx) |
ServiceUnavailableError | 服务暂时不可用 |
错误处理示例
获取请求 ID
每个 API 请求都会返回x_request_id,可用于联系技术支持排查问题:
高级配置
超时与重试
自定义 API 地址
自定义 HTTP 客户端
支持代理、自定义 SSL 证书等场景:资源管理
使用上下文管理器自动关闭连接:调试日志
启用 DEBUG 级别日志查看请求详情:常见问题
| 问题 | 解决方案 |
|---|---|
AuthenticationError | 检查 TEXTIN_APP_ID 和 TEXTIN_SECRET_CODE 是否正确 |
FileSizeError | 文件大小限制为 500MB |
TimeoutException | 增大超时时间:XParseClient(timeout=300.0) |

