Pythonには標準のurllibモジュールを使うことでREST APIへのアクセスが可能です。
ただし私はサードパーティーから出ているrequestsモジュールを使うほうがシンプルに使えて何かと便利なので、通常はrequestsモジュールを使ってます。
今回も自分へのメモとなります。
requestsモジュールのインストール
標準ではインストールされてません。
(base) C:\PythonProject>pip install requests
Requirement already satisfied: requests in c:\users\user\anaconda3\lib\site-packages (2.24.0)
Requirement already satisfied: idna<3,>=2.5 in c:\users\user\anaconda3\lib\site-packages (from requests) (2.10)
Requirement already satisfied: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in c:\users\user\anaconda3\lib\site-packages (from requests) (1.25.11)
Requirement already satisfied: certifi>=2017.4.17 in c:\users\user\anaconda3\lib\site-packages (from requests) (2020.12.5)
Requirement already satisfied: chardet<4,>=3.0.2 in c:\users\user\anaconda3\lib\site-packages (from requests) (3.0.4)
GETの利用
GETで呼び出す例です。
・requests.getで呼び出し
・paramsで引数を指定する
・リクエストの結果はstatus_codeやjsonなどで指定して取得できる
import requests
payload = {'key1': 'value1', 'key2': 'value2'}
r = requests.get('http://httpbin.org/get', params=payload)
print(r.status_code)
print(r.text)
print(r.json())
// 結果
200
{
"args": {
"key1": "value1",
"key2": "value2"
},
"headers": {
"Accept": "*/*",
"Accept-Encoding": "gzip, deflate",
"Host": "httpbin.org",
"User-Agent": "python-requests/2.24.0",
"X-Amzn-Trace-Id": "Root=1-60628027-4d47a5077c1009970f13d3ba"
},
"origin": "114.150.171.131",
"url": "http://httpbin.org/get?key1=value1&key2=value2"
}
{'args': {'key1': 'value1', 'key2': 'value2'}, 'headers': {'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'Host': 'httpbin.org', 'User-Agent': 'python-requests/2.24.0', 'X-Amzn-Trace-Id': 'Root=1-60628027-4d47a5077c1009970f13d3ba'}, 'origin': '114.150.171.131', 'url': 'http://httpbin.org/get?key1=value1&key2=value2'}
POSTの利用
POSTもGETとほとんど同じになります。
・requests.postで呼び出し
・dataで引数を指定する
import requests
payload = {'key1': 'value1', 'key2': 'value2'}
r = requests.post('http://httpbin.org/post', data=payload)
print(r.status_code)
print(r.text)
print(r.json())
// 結果
省略
・
・
まとめ
PUTやDELETEなどの場合も同様に簡単に指定することができます。
Pythonのオススメ勉強方法
私がオススメするPython初心者向けの最初に購入すべき書籍は「シリコンバレー一流プログラマーが教える Pythonプロフェッショナル大全」です。
シリコンバレー一流プログラマーが教える Pythonプロフェッショナル大全
この書籍は実際にシリコンバレーの一流エンジニアとして活躍している酒井潤さんが書いた本です。
内容も初心者から上級者までまとめられており、各Lessonも長すぎずに分かりやすくまとめられているので、初心者の方にもおすすめです。
シリコンバレー一流プログラマーが教える Pythonプロフェッショナル大全
今回は以上となります。
コメント