From dab827390c67d679c404c5e9cc4c2e34eaf31a8a Mon Sep 17 00:00:00 2001 From: woni <320753691@qq.com> Date: Wed, 17 Jan 2024 17:46:58 +0800 Subject: [PATCH] add download message image --- app/utils.py | 65 ++++++++++++++++++++++++++-------------------------- 1 file changed, 33 insertions(+), 32 deletions(-) diff --git a/app/utils.py b/app/utils.py index 1647c0d..c4b5a0a 100644 --- a/app/utils.py +++ b/app/utils.py @@ -32,10 +32,10 @@ def get_message_resource(client, message_id, file_key, file_type, save_dir): # 处理业务结果 # 处理业务结果 + file_path = os.path.join(save_dir, file_key) - f = open(file_path, "wb") - f.write(response.file.read()) - f.close() + with open(file_path, "wb") as f: + f.write(response.file.read()) return file_path @@ -45,39 +45,40 @@ def upload_media(client, file_path, parent_type, parent_node): _, filename = os.path.split(file_path) file_size = os.path.getsize(file_path) - file_bin = open(file_path) - request: UploadAllMediaRequest = ( - UploadAllMediaRequest.builder() - .request_body( - UploadAllMediaRequestBody.builder() - .file_name(filename) - .parent_type(parent_type) - .parent_node(parent_node) - .size(file_size) - .file(file_bin) + with open(file_path) as f: + request: UploadAllMediaRequest = ( + UploadAllMediaRequest.builder() + .request_body( + UploadAllMediaRequestBody.builder() + .file_name(filename) + .parent_type(parent_type) + .parent_node(parent_node) + .size(file_size) + .file(f) + .build() + ) .build() ) - .build() - ) - file_bin.close() - # 发起请求 - option = ( - lark.RequestOption.builder() - .user_access_token("u-dF0r5rD5BcUFhORI38zmlk1l61TBghPzry00gl.82Haz") - .build() - ) - response: UploadAllMediaResponse = client.drive.v1.media.upload_all(request, option) - - # 处理失败返回 - if not response.success(): - lark.logger.error( - f"client.drive.v1.media.upload_all failed, code: {response.code}, msg: {response.msg}, log_id: {response.get_log_id()}" + # 发起请求 + option = ( + lark.RequestOption.builder() + .user_access_token("u-dF0r5rD5BcUFhORI38zmlk1l61TBghPzry00gl.82Haz") + .build() + ) + response: UploadAllMediaResponse = client.drive.v1.media.upload_all( + request, option ) - return - # 处理业务结果 - lark.logger.info(lark.JSON.marshal(response.data, indent=4)) + # 处理失败返回 + if not response.success(): + lark.logger.error( + f"client.drive.v1.media.upload_all failed, code: {response.code}, msg: {response.msg}, log_id: {response.get_log_id()}" + ) + return - return response.data.file_token + # 处理业务结果 + lark.logger.info(lark.JSON.marshal(response.data, indent=4)) + + return response.data.file_token