「Google AJAX Feed API」を使って“お気に入りブログ”の更新情報をチェックしています。
自分にとって必要最低限の機能があれば十分で、超簡易RSSリーダーみたいなものですが、シンプルゆえに自分なりに便利に使っています。
→ Google AJAX Feed API – お気に入りブログ ※削除
「Google AJAX Feed API」にもいろいろと欠点があって、仕様的に困るのがRSSファイルの原本を読みにいっているわけではないというところでしょうか。プログを更新して「Google AJAX Feed API」で読みにいってもRSSファイルが更新されていない状態になっています。1~3時間経てば拾えるため、RSSファイルがキャッシュされるまでに結構なタイムラグがあるのかもしれません。
そこで、「Google AJAX Feed API」を使わず、PHPを使って直接「index.xml」や「index.rdf」を取り込む“昔風な”スクリプトを作ってみましたが、そこで妙なことに気が付きました。
いくつかのブログサービスのRSSファイルを読み込むことができません。RSSファイルの中身の解析ではなく、ファイルの取得をする時点で弾かれます。これはいったいどういうことでしょうか。
思い当たることといえば…
ニフティ、スパムブログのフィルタリング技術を開発~スパムブログについての自主調査を実施~
「スパムブログ」を手っ取り早く作る方法としては設定したキーワードにマッチするRSSフィードを切り貼りしてページを作り出せばいいわけで、それなら素人でもPHPを使えばできるかもしれませんね。(ゴミページを量産するようなことはやめましょうね)
それを防止する方法としては、許可されたサービス以外からのアクセスをブロックすればいいわけです。結果的に「手作りの簡易RSSリーダー」も「スパムブログ生成プログラム」と同類とされちゃってRSSファイルへのアクセスができないというわけかも。
ということで、今回も「Google AJAX Feed API」に頼ることにしました。
→ お気に入りブログ&Webサイト一覧 ※削除
追記(3月28日).
「RSSファイルを読み込むことができません」は勘違いでした。
$flist = file($url);
foreach($flist as $strdat){
~ ここに処理内容を記述 ~
}
で処理できないRSSファイルがあったということで…
$array = file($url);
$fdata = join(“”,$array);
$flist = split(“\n”,$fdata);
foreach($flist as $strdat){
~ ここに処理内容を記述 ~
}
にしてみたら上手くいきそう。
追記(3月29日).
PHPで全部やると「更新情報」の部分も検索エンジンにキャッシュされてしまう可能性が高く、目的が違うとしても手法が「スパムブログ」と似ていては嫌な感じ。そこで、「更新情報」の取得はPHPでやって、表示部分はJavascriptでやることにしました。
→ お気に入りブログ&Webサイト一覧 ※削除
非同期通信でやってみるとなんとなく今風で良い感じ。