python脚本可全自动完成liblibai文生图全流程:1.安全读取.env密钥;2.严格按uri+timestamp+nonce生成hmac-sha1签名;3.提交任务获取task_id;4.轮询/status接口直至status="success";5.提取有效期内图片url。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你需要用Python脚本一次性调用LiblibAI API完成从签名构造、提交任务到轮询取图的全流程,而不是手动复制粘贴时间戳、反复刷新状态页、再逐个点开图片链接下载——这种链路断裂的操作方式既不可靠又无法集成进业务系统。
获取并安全存储AccessKey与SecretKey
登录LiblibAI官网 → 进入左侧导航栏“API开发平台” → 点击“创建密钥”,系统自动生成AccessKey和SecretKey。【SecretKey仅显示一次,关闭页面即永久丢失】。
立刻将SecretKey存入项目根目录的.env文件:LIBLIB_SECRET_KEY="KppKsn7ezZxhi6lIDjbo7YyVYzanSu2d",不要写进Python源码里,否则推送到GitHub等于公开密钥。
构造HMAC-SHA1签名并发起请求
LiblibAI要求签名原文严格按URI + "&" + Timestamp + "&" + SignatureNonce顺序拼接,缺一不可,顺序错一位就返回401。
Timestamp必须是毫秒级整数,误差超300秒即被拒绝;SignatureNonce需为UUID v4(不含短横线),每次请求必须唯一,重复使用会触发风控拦截。
用以下代码生成签名:
import hmac, hashlib, time, uuid
uri = "/api/generate/webui/text2img"
timestamp = str(int(time.time() * 1000))
nonce = str(uuid.uuid4()).replace('-', '')
content = uri + '&' + timestamp + '&' + nonce
signature = hmac.new(secret_key.encode(), content.encode(), hashlib.sha1).hexdigest()
提交文生图任务并获取task_id
构造JSON请求体,字段必须齐全:prompt、model_id、image_count、width、height、cfg_scale、steps、sampler_name、seed(可填-1随机)。
注意:body必须用json.dumps(..., separators=(',', ':'))压缩成无空格字符串,含换行或多余空格会导致签名失效。
发送POST请求到https://api.liblib.ai/api/generate/webui/text2img,Header中加入:
X-Liblib-Access-Key: {access_key}
Authorization: {signature}
Timestamp: {timestamp}
Signature-Nonce: {nonce}
成功响应返回JSON,从中提取【task_id】字段值,这是后续轮询的唯一凭证,丢掉就无法查结果。
轮询/task/status接口直到生成完成
第一步:用刚拿到的task_id拼出轮询地址 https://api.liblib.ai/api/task/status?task_id={task_id}。
第二步:每2秒发一次GET请求,检查返回JSON中的code字段是否为0,status是否为"success"。
第三步:当status变为"success"时,立即从result.images数组中取出第一个元素的url字段——该链接带24小时有效期,过期需重新提交任务。
大量免费API接口:立即使用
涵盖生活服务API、金融科技API、企业工商API、等相关的API接口服务。免费API接口可安全、合规地连接上下游,为数据API应用能力赋能!











