from config import load_service_config import os import requests class FileUploadUtils: cfgs = load_service_config() base_url = cfgs["aliyun"]["upload_url"] cookies = cfgs["aliyun"]['cookies'] # 设置请求头 headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", "Accept": "*/*", } @staticmethod def upload_files(reports_dir, files): files_id = {} for filename in files: file_path = os.path.join(reports_dir, f'{filename}.xlsx') try: with open(file_path, 'rb') as f: files = {'file': (os.path.basename(file_path), f)} response = requests.post( FileUploadUtils.base_url, headers=FileUploadUtils.headers, files=files, cookies=FileUploadUtils.cookies, verify=True ) if response.json()["success"]: file_id = response.json()["data"]["file_info"]["fileid"] files_id[filename] = file_id except requests.exceptions.RequestException as e: print("请求出错:", e) return None except Exception as e: return None return files_id if __name__ == '__main__': # print(FileUploadUtils.cfgs["aliyun"]["cookies"]) report_dir = './data/reports/00000000000000000000000011445301/440298' files = [ '卷烟信息表', '品规商户特征关系表', '相似卷烟表', '商户售卖推荐表' ] FileUploadUtils.upload_files(report_dir, files)