このエントリーをはてなブックマークに追加 Twitterでツイート bot作ってみた

2buy.jp用にtwitterのアカウントを用意し、botを作ってみました。botの機能としては、「価格.com」の最安価格を調べ、1週間前から一番値下がりしたアイテムをツイートします。

参考にしたのはこちら↓
http://www.sdn-project.net/labo/oauth.html

本番環境はcronで一日数回実行させるのですが、そこでポカミスです。
OAuthを簡単に使うため、twitteroauth.phpを読み込むのですが、ほかのコンテンツでも利用することを考慮し、

require_once '../twitlib/twitteroauth.php';

といった感じにしてcronで動作させると、うまくツイートされません。
コマンドラインで実行させてみるとしっかりエラーになっていて、上記のファイルが見つからないと。
cronで動作させた時のカレントディレクトリは、そのファイルのディレクトリとは違うんですよね^^;

というわけで、ソースを修正。

require_once dirname( __FILE__ ).'/../twitlib/twitteroauth.php';

これでエラーはなくなりました。

さて再度cronで動かしてみると、またツイートしてくれません。
$to->OAuthRequest の戻り値のXMLデータを確認すると、どうやら直前の投稿と同じ内容だったため、ツイートされなかったようです。
botで自動的にツイートする場合は、メッセージの中に日時なんかを含めてユニークにしたほうがよさそうですね。

投稿日:2010年7月22日
  • ※コメントは、スパム対策などのためIPアドレスにて制限しております。
  • ※誹謗や中傷、スパムなど、不適切な内容は公開いたしません。ご了承ください。