目次

requests

HTTP送信を行う。比較的読みやすく記述することができる。

GET, POST送信

requests.get()またはrequests.post()を使う。

1
2
3
4
5
6
7
8
9
10
11
12
13
import requests
 
upload_url = 'http://exsample.com'
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
 
upload_url = 'http://exsample.com'
file_path = '(ローカルのファイルパス)'
files = {'zipfile': ('filename.zip', open(file_path, 'rb'))}
 
r = requests.post(upload_url, files=files)
 
print(r.text)

requests.post()files引数に情報を渡す。渡す情報(files)は辞書形式で、キーには任意の識別名、値には、(ファイル名, バイナリ読込で開いたファイルハンドラ)のタプルを渡す。この時、dataparams引数で一緒に他の情報を与えることも可能。

受け取り側は、たとえば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