以下のソースコードでPython x Twitter APIを使ってDMを送る機能を作成しているのですがうまくできません。。解決策かサンプルのソースコードがあればいただきたいです。。
# coding: utf-8 import json, config import sys import requests from import OAuth1Session CK = config.CONSUMER_KEY CS = config.CONSUMER_SECRET AT = config.ACCESS_TOKEN ATS = config.ACCESS_TOKEN_SECRET twitter = OAuth1Session(CK, CS, AT, ATS) # URL for keyword search url = 'https://api.twitter.com/1.1/direct_messages/events/new.json' event_data = { 'event': { 'type': 'message_create', 'message_create': { 'target': {'recipient_id': 'xxxxxxxx'}, 'message_data': { 'text': "Hello World" } } } } res = twitter.post(url, params = event_data) if res.status_code == 200: #正常通信出来た場合 dmlist=json.loads(res.text) print "DMを送信しました。" print dmlist else: #正常通信出来なかった場合 print("Failed: %d" % res.status_code)
上記を実行するとエラーコードの422が返ってきます。エラー本文はありません。
エラーコードを検索すると
『POST account / update_profile_bannerへアップロードされた画像を処理することができない場合に返ります。』のようです。 http://westplain.sakuraweb.com/translate/twitter/API-Overview/Error-Codes-and-Responses.cgi
こちらのご質問は https://teratail.com/questions/158374 とほぼ同内容なのかなと思いましたが、違いは何でしょう? 158374 から一歩進んだけれど `422` のエラーの解決の仕方がわからない、といった感じでしょうか?
レスポンスコード `422` の意味合いについては公式のドキュメント https://developer.twitter.com/en/docs/basics/response-codes.html をご覧いただくのが確実かと思います。また、質問者さんがプログラミングのご経験がどのくらいで、 Python 経験はどのぐらいで、 API 利用経験はどのぐらいで、という背景情報をご提示されると、より回答がもらえやすくなるかと思います。
すみません!こちら、質問として解決致しましたので解決にいたします。紛らわしく申し訳ございせん、
回答1件
あなたの回答
tips
プレビュー