記事本文
はてなブックマークと dc:description の続き
はてなブックマークと dc:description にて、 rdf:RDF の記述やコンテントネゴシエーションがはてなブックマークの概要取得に影響を与えているんじゃないかなあと考えた件の続き。
引き続き IRC チャンネル #hxxk にて drry さん ( drry+@->Weblog ) やシンヤさん ( Hatena::Diary::Code-404 ) と共にああでもないこうでもないと実験しました。
はてなブックマークは Feed を探して概要を取得するみたい
自分の記事をいくつかブックマークしてみたのですが、その際にアクセスしてくる UA を見て気付いたこと。
| Time | Host | UserAgent |
|---|---|---|
| 2005-11-21T22:34:32+09:00 | ns.hatena.ne.jp | Hatena Bookmark/0.1 |
| 2005-11-21T22:35:05+09:00 | ns.hatena.ne.jp | Hatena Bookmark/0.1 |
| 2005-11-21T22:35:09+09:00 | ns.hatena.ne.jp | Hatena Bookmark/0.1 |
| 2005-11-21T22:35:59+09:00 | ns.hatena.ne.jp | Hatena Bookmark/0.1 |
| 2005-11-21T22:36:06+09:00 | ns.hatena.ne.jp | Feed::Find/0.06 |
4 回に渡って Hatena Bookmark/0.1 という UA でアクセスしてきた後に、最後に Feed::Find/0.06 という UA でアクセスしてきています。 ということは、やはり本文中の rdf:RDF 要素ではなくて Feed の description を取得しに行こうとしているみたいだ !
そこで、はてなブックマークと dc:description でもきちんと概要が取得されていた Lucky bag::blog の、「既に Feed には掲載されていない日付で、なおかつまだはてなブックマークにブックマークされていない」記事をブックマークしてみることにしました。 ( 勝手にテストさせていただきました、事後報告ですみません> e-luck さん ) すると、その前後の記事は ( おそらく最初にブックマークされた時点の ) Feed に含まれていた description がブックマークページの概要として取得されていますが、今回新たにブックマークした記事は Feed には掲載されていないためか、本文からブックマークページの概要が取得されました。
| 元記事 | MTEntryExcerpt | ブックマークページ | はてなブックマークの概要 | 初ブックマーク日 |
|---|---|---|---|---|
| Lucky bag::blog: RSS 用の XSL を公開してみる | RSS 用の XSL ファイル(MT 向け)を公開してみようかなって今突然思いついたんで、大した物じゃないけどご入り用なら如何でしょうかとか言ってみたりして。本題は、Mozilla 系のブラウザで disable-output-escaping="yes" が効かないんだけど、何か解決方法ないですか?って、これが言いたかったわけですが。 |
はてなブックマーク - Lucky bag::blog: RSS 用の XSL を公開してみる | RSS 用の XSL ファイル(MT 向け)を公開してみようかなって今突然思いついたんで、大した物じゃないけどご入り用なら如何でしょうかとか言ってみたりして。本題は、Mozilla 系のブラウザで disable-output-escaping="yes" が効かないんだけど、何か解決方法ないですか?って、これが言いたかったわけですが。 |
2005/06/11 |
| Lucky bag::blog: 病み上がりで思ったこと | 丸 2 日ほどネット落ちしていて、今日久しぶりに広大なネットの海へ恐る恐る泳ぎ入れてみたんですが、なんだかものスゲェ勢いで情報が流れているのを実感。 |
はてなブックマーク - Lucky bag::blog: 病み上がりで思ったこと | なんだか風邪を引いたらしく、咳→喉の痛み→39 度近い高熱→鼻水と言う 4 連コンボで、日曜日の午後から月曜日の夕方近くまで、ウンウン唸っていたわけで、今日はなんとか出社したんだけど全然頭が働かなくて、しかも、両手首に蕁麻疹みたいなんが出来てちょっと痒いんですが、これは何の病気ですか。 そんな感じで、丸 2 日ほどネット落ちしていて、今日久しぶりに広大... |
2005/11/21 |
| Lucky bag::blog: MT のカンペと管理画面の可変レイアウト化 | 全ての MT タグが用途別にソートされていて、属性や日付タグのフォーマットなんかも網羅されている Movable Type のカンペと、Movable Type の管理画面を可変レイアウトにする CSS を配布しているサイトをご紹介。 |
はてなブックマーク - Lucky bag::blog: MT のカンペと管理画面の可変レイアウト化 | 全ての MT タグが用途別にソートされていて、属性や日付タグのフォーマットなんかも網羅されている Movable Type のカンペと、Movable Type の管理画面を可変レイアウトにする CSS を配布しているサイトをご紹介。 |
2005/06/10 |
以前、概要が記述されるのは Feed ? meta 要素 ? RDF メタデータ ? で触れましたが、海馬日記 - Re: meta要素の使ひ道にて
たとへばはてなダイアリーのフィードには最新の記事數件分(一定ではない模樣)しか掲載されません。
はてなダイアリーだけでなく、大抵のRSSがさうでせう。
此れでは昔の記事の概要は取得出來ません
という指摘を受けていたことは正鵠を得ていたわけです。
Movable Type の場合は、デフォルトでは最新の 15 件の記事が Feed に反映されるため、仮にはてなブックマークの Feed::Find/0.06 が正しく概要を取得できる条件の weblog であっても、最新の 15 件の範囲でなければたちまち正しい概要を取得されることはなくなるのです。
Feed を提供していても概要が正しく取得されるとは限らない
しかし、 hxxk.jp でも Lucky bag::blog 同様に Feed は提供しています。 では何故概要が正しく取得されたり正しく取得されなかったりするのか ? 同じ Feed 提供とはいえ、以下のような違いがあることが分かりました。
| hxxk.jp | Lucky bag::blog | |
|---|---|---|
| RSS Auto-Discovery で見つけられる Feed |
|
|
- まず最初に考えたのが「はてなブックマークは ATOM に対応していないんじゃないか ? 」ということ。そこで、 FeedBuener の提供形式を RSS 1.0 に変えてブックマークしましたが謎概要。
- じゃあ FeedBurner による Feed じゃなくて、 Movable Type から生成した生 RSS 1.0 ( 何それ ) ならどうかとブックマークしましたが謎概要。
- content:encoded で全文を提供しているから、そっちを見ているんじゃ ? Lucky bag::blog の RSS 1.0 は description しかないしということで RSS 1.0 から content:encoded を除外してブックマークしましたがやはり謎概要。
まとめそして一旦打ち切り
- はてなブックマークが取得する概要は、本文ではなく Feed から取得している
- よって、 Feed に含まれない範囲の過去の記事は概要が取得されない
- Feed を提供していてもそれから正しく概要を取得するとは限らない
簡単にまとめるとこのようなことになります。 私としては Feedburner を使わずに RSS 1.0 を提供し、その中に content:encoded による本文掲載を行わなければ上手く行くかなあと思っていたんですが……。 これも上手く行かなかったのでこの問題は一旦放置することにします。
しかしそれはまだ良いとしても、 Feed に含まれない程度の過去の記事の概要が取得されないというのはぞんざいすぎやしませんか。 わざわざ Feed を探しに行かなくても、 dc:description が本文中にあるか無いかくらいの判断は実装できそうなものですけれど。

