twitterの自分の発言を定期的に削除していくbotの作り方です。略してデリったー。 twitter apiが9月から完全にベーシック認証を廃止し、oauthに完全移行したため作り直しを余儀なくされたので備忘録も含めての投稿。 oauthの概要、oauthを使うための環境作り、appの登録からconsumer keyやconsumer secretの取得などは調べればいくらでも参考サイトがでてくるので割愛。 まずは得たconsumer key, secretのペアからaccess key, tokenを取得する方法。今回はブラウザアプリではなく、クライアントアプリなのでコマンドラインから実行できるphpスクリプトを作成。 以下のスクリプトをコマンドラインから実行。URLが表示されるのでブラウザでURLにアクセス、PINコードを入手、再度スクリプトの入力受付に入力、access key, tokenの取得となります。 require_once 'HTTP/OAuth/Consumer.php'; define('CONSUMER_KEY', 'XXXXXXXXXXXXXXXXXX'); define('CONSUMER_SECRET', 'XXXXXXXXXXXXXXXXXX'); try { $http_request = new HTTP_Request2(); $http_request->setConfig('ssl_verify_peer', false); $consumer_request = new HTTP_OAuth_Consumer_Request(); $consumer_request->accept($http_request); $consumer = new HTTP_OAuth_Consumer(CONSUMER_KEY, CONSUMER_SECRET); $consumer->accept($consumer_request); $consumer->getRequestToken('http://twitter.com/oauth/request_token'); $url = $consumer->getAuthorizeUrl('http://twitter.com/oauth/authorize'); if (!$stdin = fopen('php://stdin', 'r')) { throw new Exception('stdin open failed'); } [...]