API 備忘録 | メシのタネ

twitterbunner
このエントリーをはてなブックマークに追加

【TwitterAPI】 friendships/createにPOSTすると403が返ってきて困った

 2014/11/04

Pythonを使って、ユーザーを検索して、指定ユーザーをフォローしようと思ってプログラムを作ってたらTwitterAPIの操作でハマりました。
対象IDをフォローする場合に、IDやスクリーンネームをpostしないと駄目だと思うんですが、
今回対象のTwitterIDを指定URLにpostしたら403が返ってきたので情報の探し方が分からなくって凄い困りました。

解決のプロセス

URLにpostするパラメータの設定がおかしいんだと思ってたんですけど、メソッドからパラメータを送信するんじゃなくて、
POSTするURLにパラメータを設定する事で解決ができました。多分、ほかにも良いやり方がありそうです。

間違っていたコードと大丈夫だったコード

とりあえずパラメータをJSON形式で記載して、これをpostさせれば良いと思ってました。
実際statuses/updateの方ではパラメータをJSON形式で指定してpostさせたら上手く行きました。


twiKey = OAuth1Session(consumer, cSecret, accessToken, aSecret)
url = "https://api.twitter.com/1.1/friendships/create.json"
 params = {
     "user_id ": uId,
     "follow" : "false"
 }

request = twiKey.post(url, params = params)

フォローさせたいなら、こんな感じでパラメータをURLに設定すれば上手く行くようでした。


twiKey = OAuth1Session(consumer, cSecret, accessToken, aSecret)
request = twiKey.post("https://api.twitter.com/1.1/friendships/create.json?user_id="+uId+"&follow=true")

こんな感じで書いたら、上手くフォローすることができました。
SSLで接続させないと駄目とか、API制限に引っかかったとか色々検索したら出てきましたが、
自分はリクエストの方法がおかしかったようです。もし良い書き方があれば教えて下さい・・・。

参考リンク

POST friendships/create
ユーザーをフォローする、アンフォローする


このエントリーをはてなブックマークに追加

1 件のコメント


Tweet @kintoki_penpen あとこれとか。 http://t.co/Xuctox2rp6 これ書… | gather-up [wp]  2015-06-15 00:23:29
[…] あとこれとか。 mikaduki.info/api/1780/ これ書いてるのお友達。 […]

コメント

"【TwitterAPI】 friendships/createにPOSTすると403が返ってきて困った"
でメシのタネのおすすめを検索したよ!

プログラミング備忘録 | メシのタネ