2012-01-25 8 views
1

私は既に多くのコードスニペットをチェックしましたが、Python 2.4のみでシングルリクエストでテキストとバイナリファイルの両方をマルチパートに投稿する方法が見つかりませんでしたか?コメントのHereは、BytesIOクラスについて言及しましたが、2.4では存在しません。 (プレーンなPython、サードパーティのライブラリはありません)ありがとうございました。ここにあなたがリクエスト・ライブラリを使用することができますPythonの2.6とマルチパートバイナリファイルPOST in python 2.4

+1

あなたは[ポスター](http://atlee.ca/software/poster/)で見たことがありますか? – jterrace

+0

サードパーティなしでこれを行う方法がない場合は、私はポスターのソースを掘り下げようとします。しかし、私はある種の回避策があることを願っています。 – Oink

答えて

0

は、documentationから抽出されたスニペットです:

>>> url = 'http://httpbin.org/post' 
>>> files = {'report.xls': open('report.xls', 'rb')} 

>>> r = requests.post(url, files=files) 
>>> r.text 
{ 
    "origin": "179.13.100.4", 
    "files": { 
    "report.xls": "<censored...binary...data>" 
    }, 
    "form": {}, 
    "url": "http://httpbin.org/post", 
    "args": {}, 
    "headers": { 
    "Content-Length": "3196", 
    "Accept-Encoding": "identity, deflate, compress, gzip", 
    "Accept": "*/*", 
    "User-Agent": "python-requests/0.8.0", 
    "Host": "httpbin.org:80", 
    "Content-Type": "multipart/form-data; boundary=127.0.0.1.502.21746.1321131593.786.1" 
    }, 
    "data": "" 
} 
+0

リクエストのバージョンがPython 2.4をサポートしているかどうかはわかりません。 –

+0

うん、それはどんな依存関係もなしで行われるべきである。 – Oink