使用requests库上传文件是非常简单的。下面是一个完整的示例,展示了如何使用requests上传文件,包括基本的错误处理。

文件上传示例

import requests

def upload_file(file_path, url):
    """上传文件到指定 URL"""
    try:
        # 打开文件并进行上传
        with open(file_path, 'rb') as file:
            files = {'file': file}  # 文件参数的字典
            response = requests.post(url, files=files)  # 发送 POST 请求
            
            # 检查响应状态
            response.raise_for_status()  # 如果响应状态码不是 200-299,会抛出异常
            
            # 返回 JSON 响应
            return response.json()  # 假设服务器返回 JSON 格式数据
    except requests.RequestException as e:
        print(f'上传文件失败: {e}')
    except FileNotFoundError:
        print('文件未找到,请检查路径')
    except Exception as e:
        print(f'发生错误: {e}')

if __name__ == '__main__':
    # 替换为实际的文件路径和 API 地址
    file_path = 'example.txt'  # 要上传的文件路径
    url = 'https://api.example.com/upload'  # 上传的目标 URL
    
    upload_response = upload_file(file_path, url)
    if upload_response:
        print('上传成功:', upload_response)