HTTP送信を行う。比較的読みやすく記述することができる。
requests.get()
またはrequests.post()
を使う。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
import requests post_datas = { 'aaa' : 'bbb' , 'ccc' : 'ddd' } get_params = { 'eee' : 'fff' , 'ggg' : 'hhh' } r_get = requests.get(upload_url, params = get_params) r_post = requests.post(upload_url, data = post_datas, params = get_params) print (r_get.text) print (r_post.text) |
GETパラメータの送信には、requests.get()
のparams
引数に、辞書形式のデータを渡す。
POSTパラメータの送信には、requests.post()
のdata
引数に、辞書形式のデータを渡す。この時、params
を渡すことも可能。
1 2 3 4 5 6 7 8 9 |
import requests file_path = '(ローカルのファイルパス)' files = { 'zipfile' : ( 'filename.zip' , open (file_path, 'rb' ))} r = requests.post(upload_url, files = files) print (r.text) |
requests.post()
のfiles
引数に情報を渡す。渡す情報(files
)は辞書形式で、キーには任意の識別名、値には、(ファイル名, バイナリ読込で開いたファイルハンドラ)のタプルを渡す。この時、data
やparams
引数で一緒に他の情報を与えることも可能。
受け取り側は、たとえばPHPなら$_FILES
定数に入っている。(参考: PHP $_FILES(ファイル変数)のすべて!【初心者向け基本】 | WEPICKS!)
1 2 3 4 5 6 7 8 9 |
<?php // $_FILESを連想配列として、指定した識別名で読み取れる echo $_FILES [ 'zipfile' ][ 'name' ] // => filename.zip echo $_FILES [ 'zipfile' ][ 'size' ] // => 1234 (byte) echo $_POST [ 'aaa' ] // => bbb echo $_POST [ 'ccc' ] // => ddd echo $_GET [ 'eee' ] // => fff echo $_GET [ 'ggg' ] // => hhh |