You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows系统下如何传入文件路径并用Python代码调用POST API

问题原因

你的代码报错是因为类Unix系统(Ubuntu)和Windows的绝对路径格式不兼容:

  • Ubuntu的绝对路径以/开头,盘符被挂载为目录,所以带前置/的路径可以正常识别
  • Windows的绝对路径以盘符:开头,你写的路径最前面多了冗余的/,系统无法解析该路径,就会抛出找不到文件的错误
解决方案

1. 快速修复

直接删除路径开头的/即可,Windows原生支持正斜杠作为路径分隔符,无需额外转义反斜杠:

import requests

url = 'https://api'
# 删掉路径开头的/即可
files=[('file',('image.png',open('C:/Users/Swarnitha/Downloads/image.png','rb'),'image/png'))]
response = requests.post(url, files=files)

2. 跨平台兼容方案(推荐)

使用Python3.4+内置的pathlib模块处理路径,自动适配Windows、Linux、macOS的路径格式,同时建议用with上下文管理器打开文件,避免文件资源泄漏:

import requests
from pathlib import Path

url = 'https://api'
# 自动适配当前系统的路径格式,无需手动处理斜杠、盘符
img_path = Path.home() / "Downloads" / "image.png"

with open(img_path, 'rb') as f:
    files=[('file',('image.png', f, 'image/png'))]
    response = requests.post(url, files=files)

这种写法在Ubuntu和Windows系统中都可以正常运行,不需要针对系统做额外修改。

内容的提问来源于stack exchange,提问作者Swarnitha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 04:15:04