日々のできごとと写真

Twitter Streaming APIから日本語のつぶやきをPHPで取得する


2009-06-10 01:29 | IT

TwitterのAPIでストリーミングAPIというものがリリースされていたので、
PHPでどれだけ簡単にいけるのか実装してみました。

今回はTwitterのアカウントを持っていれば誰でも利用できる、
けど一部のデータしか取得できない「spritzer」APIを利用しました。

Streaming API Documentation

※json_decode()を利用しているのでPHP5.2.0以上対象になります。

<?php
$user = 'username';
$password = 'password';
$stream = fopen("http://{$user}:{$password}@stream.twitter.com/spritzer.json", "r");
while ($json = fgets($stream )) {
    $twitter= json_decode($json,true);
    if(preg_match('/[ァ-ヶーぁ-ん]/u',$twitter['text']))
        echo $twitter['user']['name'].':'.$twitter['text'] . PHP_EOL;
}

なんてことないコードになりました。
実行すると標準出力に「ユーザー名:つぶやき」が続々と出力されます。

ポイントもなにもないんですが、「日本語のつぶやき」を取得する部分は、
「つぶやき内に1文字でもひらがなorカタカナが含まれている」という条件になっています。

Unicode対応 文字コード表

漢字を含めようとあまり広げ過ぎると中国語のつぶやきも出てきますし、
いい感じの落とし所だと思っています。

正規表現のフィルターをURLにして今流行ってるサイトを取り出す、なんてことも簡単ですね。
(実際はbit.lyのURLを戻したりしなきゃいけなかったり面倒ですけども)

  1. 4 Responses to “Twitter Streaming APIから日本語のつぶやきをPHPで取得する”

  2. By cartier bangle pink cheap on 2016-12-10- 01:08

    cartierlovejesduas Si nadie comprase una vivienda embargada, los bancos se lo pensarían a la hora de tirar a la gente a la calle dándole facilidades para pagar. Yo no me pienso aprovechar de la desgracia de los demás y a favorecer a la banca, que para mí son lo peor junto con la casta política. +1 Totalmente de acuerdo¡¡¡
    cartier bangle pink cheap [url=http://www.banglegold.com/cartier-love-bracelet-transfer-everlasting-like/]cartier bangle pink cheap[/url]

  3. By imitation Bangles love cartier on 2016-12-10- 01:09

    cartierlovejesduas Pues yo me he fijado bien y los coches que pasan detrás llevan matrículas españolas. Este tío nos la está colando y está en Pamplona. Se ha destapado todo con lo de ver un España – Francia en directo camino de Alaska.
    imitation Bangles love cartier [url=http://www.whatjewelleryhouse.com/]imitation Bangles love cartier[/url]

  4. By replica cartier anelli diamanti on 2016-12-10- 01:10

    cartierlovejesduas What happens if you just inhale the nitrous? Alcohol infusion in that too? Can one actually inhale alcohol? (of course anyone can inhale anything – I mean feel the effect.)
    replica cartier anelli diamanti [url=http://www.mercibassocosto.net/]replica cartier anelli diamanti[/url]

  5. By bracelet style cartier faux on 2016-12-10- 01:10

    cartierlovejesduas oh and “I say sexy things to myself with im daaancin'”
    bracelet style cartier faux [url=http://www.marquebijoux.com/tag/bracelet-cartier-imitation]bracelet style cartier faux[/url]

コメント For mixi ユーザー

コメント