APIからTweetできない
Twitterのbotアカウントで、Webアプリを紹介しようと思って、
Cute #Frenchie Images are here!! http://t.co/mAphmTn59F #puppy #frenchbulldog
— Frenchie_Love (@Frenchie_Cute) March 27, 2014
とtweetさせようと思っても、なぜかエラーが出まくる。
いろいろ試してみると、urlを書かないとtweetできる。また、ハッシュタグにしているところを#を外すとtweetできる。
何か文法が間違っているのかとか色々考えてエラーコードを見てみたら、下のような返り値が。
Class Object ( [errors] => Array ( [0] => stdClass Object ( [code] => 226 [message] => This request looks like it might be automated. To protect our users from spam and other malicious activity, we can’t complete this action right now. Please try again later. ) ) )
要するに、Twitter側が「これ、スパムじゃない?」って判断したから呟かせてあげないってことらしい。そんなアホな、hashtagとurlを組み合わせてtweetしたらスパムなの?
このフィルタは外してほしいです、Twitterさん。お願いします。
ということで、何とか呟かせる方法を考えました。
iftttを使う。iftttとは、「ある条件」が起こったら「ある作業」をさせるというのを自動化できるサービスで、例えば「Instagramに画像を投稿したらその内容をTwitterでツイートする」みたいなことができます。iftttでは「ある条件」として年ごと、月ごと、週ごと、日ごと、一時間ごとに「ある作業」をさせるという事ができるのでcronのような使い方ができます。そして、なぜかiftttを介すると”This request looks like it might be automated. To protect our users from spam and other malicious activity, we can’t complete this action right now. Please try again later. “とはならずにツイートすることができます。iftttがスパムではないサービスとしてTwitter側で判断しているのでしょうか。
2015/03/03 追記
このエラー、出なくなったみたいでバンバンツイートできてる。
Twitterの仕様が変わったのか?
一度やってダメだった人もトライしてみてください。