新・元地方の中規模印刷会社で苦悩するWebデザイナー改めWebディレクターの日記

自由な20代、窮屈な30代を経て、遂に40代になっちまったWebディレクター&パソコン講師の覚書と思う言(こと)。略称【ちほちゅう】

*

ツイッター(twitter)botを「さくらインターネット」に設置

      2014/11/09

  • このエントリーをはてなブックマークに追加

1年以上前の記事です。内容が古い可能性があります。

熊谷市のツイッターポータルサイト「つぶくま」のマスコット「つぶくま」くんのアカウントをbot化しました。
以下手順を説明します。

つぶくまチラシ#1 A4版
■ 埼玉県熊谷市のtwitter(ツイッター)ポータル 【つぶくま】
■ つぶくま (tubu_kuma) on Twitter

スポンサーリンク
 

まずはスクリプトを用意します。
こちらに日本で一番有名なニートphaさんの作ったスクリプトがありますのでこれを使わせていただきます。
プログラミングができなくても作れるTwitter botの作り方
 「ダウンロード」から「バージョン2.04betaをダウンロード」してください。

以下、phaさんの解説通りに「秀丸」でも使って、

  1. data.txtの編集
  2. reply_pattern.phpの編集
  3. bot.phpの編集
  4. setting.phpの編集
  5. 試しにbotを動かしてみる
  6. cronの設定をする

と進めていけばOK。

途中注意すべき点は

  • ユニコードが扱えるテキストエディタで編集する(「メモ帳」不可、「秀丸」でしたらOK)
  • 「data.txt」と「reply_pattern.php」はリプライやツイートのパターンによって複数作ったほうが管理しやすい。
  • 最終的に「bot.php」を動かすのでこちらに「data.txt」や「reply_pattern.php」をどう使うか書き込む。
  • 「setting.php」に使う「$consumer_key」「$consumer_secret」「$access_token」「$access_token_secret」の取得方法(後述します)
  • アップロード後のパーミッション設定を忘れずに。「data.txt(誤記?)」と「reply_pattern.php」と「log.dat」を666に。
  • cronの設定方法(後述します)

まずは「setting.php」に使う「$consumer_key」「$consumer_secret」「$access_token」「$access_token_secret」の取得方法から。
phaさんのところにも簡単に取得できる方法が書いてありますが、僕は「API」とかじゃなくて下のように「つぶくま」からの投稿にしたかったのでちょっと手をかけてあげました。

  1. まずはbotにしたいツイッターアカウントでツイッターにログインしておく。
  2. 次に「Twitter Applications | dev.twitter.com」へアクセス。
  3. 「新しいアプリケーションを追加 ≫」をクリック
  4. 「アプリケーション登録申請」となりますので以下の項目を入力します。
    アプリケーション名 : ここで設定したものが「~から」に表示されます。ここでは「つぶくま」
    アプリケーションの説明 : 10文字以上の文字列。この場合どんなbotか書いておくと便利。
    アプリケーションのウェブサイトURL : 特に必要ないが必須。つぶくまのサイトURLを入れておいた
    アプリケーションの種類 : 「クライアントアプリケーション」に設定
    Default Access type : 「Read & Write」に設定
    アプリケーションのアイコン : あとでも変えられるそうですがとりあえずつぶくまくんにしておいた。
  5. 入力が済んだら「アプリケーションを登録する」をクリック→「I Accept」をクリック
  6. 「つぶくま(任意) Settings」という画面になったら成功。
    下の方にある「Consumer key」が「$consumer_key」。
    「Consumer secret」が「$consumer_secret」になる。
  7. 右にある「My Access Token」ボタンを押すと「Access Token (oauth_token)」と「Access Token Secret (oauth_token_secret)」を確認するとこができる。
    それぞれ「Access Token (oauth_token)」が「$access_token」。
    「Access Token Secret (oauth_token_secret)」が「$access_token_secret」になる。

次にcronの設定方法。さくらインターネットを使う理由はここにあります。
さくらインターネットでcronを設定するのは以下の記事を参考に。
□ mixiとブログのアンオフィシャルな連携方法
□ 「twitter2mixivoice」を「さくらインターネット」に導入

ただし、今回は実行コマンドの記述が少々特殊です。
それに関しては以下の記事が参考になりました。
WOMO :: さくらのレンタルサーバで Twitter bot を動かす :: 2010/04/14

Cron の設定では実行コマンドで、bot.php を設置したフォルダに移動してから php で実行しているところがポイント。cd での移動がないとライブラリが読み込めず、Bot が動作しない模様です。

PHP TIPS Vol.6

コマンドラインで実行するときはHTTPヘッダは不要な場合が多いので”-q”又は”-f”を 付けて実行することが多いと思います。ここでは”-q”を付けることにします。

さらにphaさんの解説にあるpost_random.php か post_rotation.php か reply_random.phpってのはおそらくVer.1.4以前の事だと思います。
Ver.2.0になってすべて「bot.php」で動かせるようになっているみたいです。

したがって実行コマンドは以下のとおり。

cd /home/plotfactory/EasyBotter2.04beta/ ; /usr/local/bin/php -q bot.php 1> /dev/null

これを僕の場合5分おきに動かしています。
つぶくまcron

 - ツイッター(Twitter), プログラミング, 覚え書き ,

アドセンス広告メイン

Message

メールアドレスが公開されることはありません。

  関連記事

WordPress(ワードプレス)で記事途中にアドセンス(adsense)広告を貼る方法

1年以上前の記事です。内容が古い可能性があります。実は、アドセンス(adsens …

twitter(ツイッター)まわりの環境をいじってみた

1年以上前の記事です。内容が古い可能性があります。昨日ツイッターに於きまして「フ …

no image
iPhoneのホームボタンの反応が鈍くなった時の対処法

1年以上前の記事です。内容が古い可能性があります。最近、僕のiPhone(アイフ …

no image
ツイッター怖い(つぶやいたら危険な3つの「つぶやき」)

1年以上前の記事です。内容が古い可能性があります。皆さんツイッター(twitte …

ツイッター(twitter)に同期された連絡先(電話帳)情報を削除する方法【パソコン編】

1年以上前の記事です。内容が古い可能性があります。たしかこれのFacebook版 …

Photoshopでスライスをまとめて削除する方法

1年以上前の記事です。内容が古い可能性があります。これ、生徒さんに聞かれてすぐ答 …

ヘアラインを一つ一つ修正しようとしていたらしい

1年以上前の記事です。内容が古い可能性があります。とんでも現場からこんにちは。 …

スマートフォンの保護フィルムを貼るのはお風呂場で

1年以上前の記事です。内容が古い可能性があります。こういうアナログチックな情報っ …

livedoor Blog(ライブドアブログ)で「記事をコピー」すると公開しちゃうゾ

1年以上前の記事です。内容が古い可能性があります。自分の場合、ブログを書くときは …

楽天ポイントを使いたい人はスマホ(スマートフォン)で買い物をしてはいけない

1年以上前の記事です。内容が古い可能性があります。ひょっとしたら同じ商品が二つ届 …

血液型オヤジ