PythonからREST APIを叩くには

HTTPプロトコル及び関連するエンコード処理を使う必要があるってことで。めも。

>20.6. urllib2 — URL を開くための拡張可能なライブラリ
http://docs.python.jp/2/library/urllib2.html

>urllib2 を使ってインターネット上のリソースを取得するには
http://docs.python.jp/2/howto/urllib2.html

>20.5. urllib — URL による任意のリソースへのアクセス
http://docs.python.jp/2/library/urllib.html?highlight=urlencode

>urllib.urlencode()
>マップ型オブジェクト、または 2要素のタプルからなるシーケンスを、 “パーセントエンコードされた (percent-encoded)” 文字列に変換
http://docs.python.jp/2/library/urllib.html?highlight=urlencode#urllib.urlencode

>18.2. json — JSON エンコーダおよびデコーダ
http://docs.python.jp/2.6/library/json.html

>Unicode HOWTO
http://docs.python.jp/2/howto/unicode.html

OAuth1

WP REST APIの認証方式の1つ。知らないので調べてみた、めも。

>WordPress Plugin(OAuth1) docs/basics
https://github.com/WP-API/OAuth1/tree/master/docs/basics

>WP REST API: Setting Up and Using OAuth 1.0a Authentication
http://code.tutsplus.com/tutorials/wp-rest-api-setting-up-and-using-oauth-10a-authentication–cms-24797

>やる夫と Python で学ぶ Twitter の OAuth

>習うより慣れろ。WP API にリクエストをいっぱい投げる。& REST クライアント “Paw” が超便利。

習うより慣れろ。WP API にリクエストをいっぱい投げる。& REST クライアント “Paw” が超便利。

>OAuth step by step
http://www.lexev.org/en/2015/oauth-step-step/

>OAuth Python Tutorial
https://techrangers.cdl.ucf.edu/oauth-python-tutorial.php

>First step to Twitter OAuth and Streaming API using Python
http://blog.yjl.im/2010/04/first-step-to-twitter-oauth-streaming.html

 …しかし、WPCliやcomposerが定位置にインストールできないのが原因なのか、
 OAuth step by stepの3-leggedのコードでやってみるも、今のところシグネチャは取れてると思うんだけど最終的に401認証エラーがでる。
 何故だ…orz

 あと、OAuth step by stepのコードだと、認証とは関係ないけど73行目とかで

 「urllib2.urlopen(urllib2.Request(url, data=[]))」

 とかやってるけど、 data=[] が原因でリスト使えないっすよ。ってPythonがエラーを吐く。
 なのでとりあえず、下記みたいに書いておいた。。

 data=urlencode({})

 data指定がないとPOSTされないのがなぁ、、
 というか、単に空文字指定でもいいのかな?

結局…

 自分の使ってる契約だとWPCliやcomposerを定位置に設定できないので、想定している環境での動作確認が取れなくて、正しい動作すら判然としないままになってしまった。
 これは当分保留するしかなさそう、、、