bazhuayu-client 是 DataHub 的官方 Python 客户端库:只封装公开 /v1 REST API,唯一运行时依赖是 httpx。方法与端点一一对应,参数名与 REST 相同,返回的就是响应里 data 部分的原样内容(dict / list)。当前版本 0.2.9,Python 3.10 及以上。
安装
初始化
Client 支持 with 语句,退出时自动释放连接;也可以手动调用 client.close()。SDK 不读取 .env 文件,需要的话由调用方自行加载。
方法与端点对照
发布与运营类端点(草稿、Build、Release、设置、分享、译文、发布者分析)和凭证密钥端点未封装,请直接调用 REST。各方法的参数含义与对应端点页一致。
典型用法
call() 发起后在客户端轮询直到终态;timeout 与 poll_interval 单位为秒。超时抛 TimeoutError,但不会取消服务端的运行。raise_on_failure=True 时运行以 FAILED / CANCELLED / EXPIRED 结束会抛 RunFailed,其 run 属性带完整运行对象。
错误处理
API 的错误响应统一抛成ApiError,字段与 REST 的 error 结构一一对应:
http-error / invalid-response 两个 code。
App 引用
get_app()、run()、call() 和运行列表的 data_app 筛选都接受两种引用:两段式 <namespace>/<app_name>(人类可读,发布者改名后失效)和稳定标识 app_id(app_<hex>,改名不受影响)。配置文件、定时任务等长期集成请记录 app_id。点对点分享给你的 App 不出现在市场检索里,用 search(shared_with="me") 查询。