プログラミング言語や環境設定を中心としたパソコン関連の技術メモです。
主にシステム開発中に調べたことをメモしています。TIPS的な位置付けで、気が向いたときにちまちま更新していきます。
PHP、Twitterへの自動投稿機能を作成。
■2015年9月5日追記
 本ページの情報は内容が陳腐化しています。
 新しく書き直した

 PHP、Twitterへの自動投稿機能を作成(2015年9月版)。

 の記事をご覧ください。

なんちゃってIT用語辞典の内容をTwitterに自動投稿したくてですね。
頑張って調べてみたのです。

そしたらプログラム自体は簡単でした。
むしろ事前準備の方がめんどくさかった(-A-)

と言う訳でやり方はこんな感じφ(--)

1.投稿用のTwitterアカウントを作成

2.https://dev.twitter.com/にログイン
  右上の「Sing in」を押して「1.」で作ったアカウントでログインする

3.右上にカーソルを持っていくとメニューがぴろぴろっと開くので「My applications」を選択

4.「Create a new application」ボタンを押す

5.必須項目(Name、Description、Description)を入力して
  規約に同意して(「Yes, I agree」にチェックをつけて)
  ボット対策の読みにくい文字を入力して「Create your Twitter application」ボタンを押す

6.なんか完了したっぽい画面になるので「Details」タブの「OAuth settings」欄にある
  「Consumer key」と「Consumer secret」の値をメモる

7.「Settings」タブに移動して「Application Type」の選択値を「Read and Write」にして
  「Update this Twitter application's settings」ボタンを押す

8.「Details」タブに戻って「Your access token」欄にある
  「Recreate my access token」ボタンを押すとトークンが払い出されるので
  「Access token」「Access token secret」の値をメモる

要は「Consumer key」「Consumer secret」「Access token」「Access token secret」の4つの値が必要なのです。

これでTwitter側の準備が完了\(--)/

次はPHP側で実際に投稿するプログラムですね。

PHP側はこんな感じφ(--)

9.https://github.com/abraham/twitteroauth/tree/master/twitteroauth/から
  「twitteroauth.php」と「OAuth.php」をダウンロードする。

10.自動投稿するプログラムを作る
 例えばこんな感じφ(--)
<?php

    //「twitteroauth.php」読み込み
    //「OAuth.php」は「twitteroauth.php」と同じ場所に配置します
    //サンプルでは両ファイルとも「./../inc/」配下においてありますよ
    require_once dirname(__FILE__) . '/../inc/twitteroauth.php';

    // 「Consumer key」値
    $ck = さっきメモった「Consumer key」の値;
    // 「Consumer secret」値
    $cs = さっきメモった「Consumer secret」の値;
    // 「Access Token」値
    $at = さっきメモった「Access Token」の値;
    // 「Access Token Secret」値
    $ats = さっきメモった「Access Token Secret」の値;

    //リクエストを投げる先(固定値)
    $url = "http://api.twitter.com/1/statuses/update.xml";
    $method = "POST";

    //投稿する文言
    $postMsg = "投稿メッセージだよー";

    // OAuthオブジェクト生成
    $toa = new TwitterOAuth($ck,$cs,$at,$ats);

    //投稿
    $res = $toa->OAuthRequest($url,$method,array("status"=>"$postMsg"));


    // レスポンス表示
    header("Content-Type: application/xml");
    echo $res;
?>

処理らしい処理は赤字の部分だけです。簡単ですね。

あとはこれをcronにでも登録して完了\(--)/

ほんで出来あがったのがこちらですφ(--)

https://twitter.com/wa3_pcs

登録されている用語をDBからランダムに拾って
Twitterに投げる処理を定期的にやらせています。
裏ではもうちょっといろいろやっていますけどね。
今は自動投稿のみですが、その内もっとbotっぽくしてみようかと考えています。

取り合えずは完了\(--)/
スポンサーリンク
 
このエントリーをはてなブックマークに追加 

category:● PHP  thema:パソコンな日々 - genre:コンピュータ  Posted by ササキマコト 

  関連記事