Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

RequestsをつかってPythonで外部WEBに接続する その3:jsonをpostする

APIだとJSONで投入するケースが多いですね。

公式のクイックスタートだと出てきませんが、
post関数にはjsonというオプションが存在します。

import json
url = "https://api.something.url"

payload = {'some': 'data'}
r = requests.post(url, json=payload)

これはよく見かける以下のような書きかたと同じ意味になります

import json
url = "https://api.something.url"

payload = {'some': 'data'}
r = requests.post(url, data=json.dumps(payload))

Note, the json parameter is ignored if either data or files is passed.

とあるので、ミスが起こらないようにdataやfileとは併用しないようにします。