私のハッシュタグ使用数トップ20

私はTwitterを2008年1月からやっています。
よく使うハッシュタグは何だろうと思い、調べてみました。 (さらに…)

PHPでTwitterAPIを使う「codebird」

TwitterAPIは1.1に切り替えられます。2013年3月5日にブラックアウトテストが行われ、古いAPIだとエラーになるそうです。

PHPでTwitterAPI1.1を使うためのプログラムを紹介します。 (さらに…)

TwitterAPIの投稿用のURL

PHPを使い、Twitterのボットを作って動かしているのですが(ヒナ先輩)、今朝の午前4時頃に突然、動かなくなりました。
調べるとプログラムにはおかしな部分はなく、どうやら投稿をポストしたときにエラーが起きている様子。
となるとTwitter側の仕様変更が考えられます。

結論を書くと次の通り。

変更前「https://twitter.com/statuses/update.xml」
変更後「http://api.twitter.com/1/statuses/update.xml」

変更前のURLが無効になったようです。私は随分、古いAPI、仕様を使っていた様子。
ここを修正したら、あっさり動きました。

飲酒カレンダー

私の飲酒の状況を表示する「飲酒カレンダー」を作ってみました。
Twitterで「アルコール」や「#twinomi」という文字列を含むツイートを抽出して整形しています。

飲酒カレンダー

今年はアルコールを控えるつもりでしたが、10日間のうち7日も飲んでいました。元日は前日の飲み過ぎで倒れていましたし、2日は車の運転をするため我慢。実質、1日しか休んでいません。


「禁煙セラピー」は効果があったそうですが。

jQueryでTwitterAPIを使う簡単なサンプル

TwitterAPIを使うと自分のツイートなどが簡単に取得できます。
またjQueryを使うとこれをブラウザに簡単に表示できます。
そのための最低限のサンプルを紹介します。

HTML

HTMLは次のようにします。
divでもpでも何でもよいのですが行数を数えるためにolにしました。

<ol id="myol"></ol>

JavaScript

jQueryを使っているという前提です。
getJSONを使うと簡単にツイートを取得できます。idは私のものです。
getJSONは取得したツイートを配列「data」に格納します。
eachは配列から一つずつ取り出して「item」に格納します。
ツイートは「item.text」で取得できます。
「item.created_at」とするとツイート時刻です。

$.getJSON("http://api.twitter.com/1/statuses/user_timeline.json?callback=?", {
    "id": "stabucky",
    "count": 10
}, function (data, status) {
    $.each(data, function (i, item) {
        $("#myol").append("<li>" + item.text + "</li>");
    });
});

Twitter APIを使い、JSON形式でツイートを取得

Twitter APIについて調べたので、メモ的に書いておきます。

URLとして「http://api.twitter.com/1/statuses/user_timeline/stabucky.json?count=1」を指定すると次のようにJSON形式で戻ってきます。
つまり直近1回分のツイートの内容を示しています。

{
    "favorited": false,
    "text": "\u300c\u6c17\u4ed9",
    "retweet_count": 0,
    "coordinates": null,
    "in_reply_to_screen_name": null,
    "in_reply_to_status_id_str": null,
    "place": null,
    "in_reply_to_status_id": null,
    "contributors": null,
    "geo": null,
    "retweeted": false,
    "source": {アプリケーション},
    "created_at": "Thu Apr 14 11:51:40 +0000 2011",
    "in_reply_to_user_id_str": null,
    "in_reply_to_user_id": null,
    "user": {省略},
    "truncated": false,
    "id": 58497645043392512,
    "id_str": "58497645043392512"
}
text

ツイートの内容です。
「\u300c」のように文字化けしているように見えますが、これはエンコードされているだけで、ブラウザに表示すると「気」と正しく表示されます。

sourse

省略しました。
ツイートしたときのアプリケーションが表示されます。

created_at

ツイートしたときの時刻です。

user

省略しました。
ユーザーの名前などの情報が表示されます。
ツイートするたびに同じ情報が表示されます。
上の例ではcount=1なので1回だけですが、count=100とすると、その時点のユーザー情報について同じものを100回返してきます。

id、id_str

そのツイートを指す、ユニークな(唯一の)番号です。
idもid_strも同じものですが、idは数値、id_strは文字列になっています。
JavaScriptなどのプログラムでidの数値が大きすぎて丸められてしまうケースがあります。その場合はid_strを使うとうまくいく場合があります。文字列なので丸められません。

一括してアンフォロー

私はTwitterのbotをやっています。
東日本大震災が起きてからbotを止めていたのですが、1週間経ったので再開しました。

このbotは自分からフォローすることはありませんが「#followme」などのタグを付けているのでフォローされることがあります。
この場合、必ず自動的にフォロー返しする仕組みになっています。

しばらくするとアンフォローされていることがあります。この場合、botから自動的にアンフォローするような仕組みにはなっていません。
先ほど確認したところ、約5000フォローに対して約4600フォロワーとなっていました。つまり約400アカウントはアンフォローされたままになっています。

これらのアカウントを一括してアンフォローすることにしました。

そこで使ったのが次のウェブサイト。

ManageFlitter - Fast & Easy Unfollowing for Twitter

ログインするとフォロー状況を調べてくれます。
Not Following Backを見ると、アンフォローされたままになっているアカウントが表示されます。
これら全てにチェックを入れて「Unfollow 100 Selected」をクリックします(100個選択した場合)。
しばらくするとアンフォローしてくれます。
まだアカウントがまだ表示されているので、未練がある場合は、ここで元に戻すこともできます。
未練がない場合には「Clear 100 Unffollowed」をクリックするとアカウントが消えます。

他にも最近ツイートしていないアカウントなどを調べることができますので便利です。

Twitterのidを取得するときは「id_str」

Twitterの自分のツイートを記録してブログ風に表示できるページを作っています。

スタニッキ

TwitterのAPIを使い、JSON形式で取得し、PHPでMySQLに保存します。
最近、これが正しく動作しなくなりました。
Twitterは各ツイートにidが付けられていますが、このidが桁落ちします。Twitterのidは16桁あるのですが、私のプログラムでは有効なのは上12桁だけで下4桁が「0000」になってしまいます。 (さらに…)

「ヒナ先輩」の紹介

私は「ヒナ先輩」というTwitterボットを作って使っています。
アカウントは「stabot」です。

色々と実験しながら内容を変えています。
現在の内容は次の通りです。

投稿の間隔は10分です。24時間、動いています。サーバのcronを利用しています。

普段は、あらかじめ書いておいた、文字列をランダムに投稿します。

午前7時からは、まず、今日が誕生日の有名人を一人ずつ紹介します。以前は文字数が許す限り数人ずつ投稿していましたが、まとめる意味がないので、最近、変更しました。
これらのデータは「ダレナノ」と共通です。
次に今日亡くなった有名人を一人ずつ紹介します。

これが終わると今日の出来事を一件ずつ紹介します。
これらのデータは「ドンナヒ」と共通です。

次は、「今日の運勢」のコーナーで、今日、運勢の良い誕生日ベストスリーとワーストワンを投稿します。
これは最近、追加した機能です。

これらがすべて終わると、また文字列をランダムに投稿します。

これらと並行して、次の機能があります。

まずフォローされた場合、自動的にフォロー返しをします。
手動でのフォローは一切していません。
リムーブやブロックはしませんが、一日に何件もリプライしてくるボットがあったので、これについては手動でブロックしました。

またリプライされた場合、自動的にリプライ返しをします。
「リプライいただき、ありがとうございます」という定型文しか返せません。
改良したいところです。

最近、加えたのは、自動リツイート機能。私のアカウント「stabucky」のツイートのうち「@」を含まないものをリツイートします。

Google日本語入力用ハッシュフラッグ辞書

Twitterで使えるハッシュフラッグをGoogle日本語入力で簡単に使えるようにテキストファイルを作り辞書に登録できるようにしました。

hashflag.txt

ご自分のパソコンに保存し登録してください。
詳しい登録の方法は割愛します。

例えば「たぐわーるどかっぷ」ならば「#worldcup」が、「たぐにほん」ならば「#jpn」が候補に現れます。
オランダは「#ned」ですよ。

古い記事

タグ

カテゴリー

最近の投稿

最近のコメント

固定ページ

アーカイブ

stabucky

写真

メタ情報