このサイト全体のはてなブックマークでの被ブックマークをトラッキングしようとsitemap.txtを元にしたPipeを作ったのだけど、あんちぽさんに「URLで絞り込んで新着ブックマークのトラッキングできるよ」と教えてもらった。はてなにはなんでもあるな。この機能にはフィードも用意されているので、これをlivedoor Readerで購読すればOK……と思いきや、明らかに被ブックマーク情報が飛び飛びでしか閲覧できなかった。原因はフィード側ではなく、LDR側の仕様によるものみたいだ。
LDRではフィードの記事はlink
要素の値で管理されているようで、link
要素の値が同じitem
要素が複数存在するフィードの場合、常に新しいitem
の方で上書きされてしまう。そのため場合によって、LDRのクローラーが巡回する合間に複数のユーザーにより同じURLがブックマークされた時など、は記事が欠落することになる。
はてブの新着ブックマークのフィードの各item
要素のlink
要素の値はブックマークされたURLになっているので、LDRでは常に一番新しいブックマークで上書きされ続けてしまう。これでは被ブックマークをトラッキングできない。フィードでは各item
のユニークなIDになり得る各ブックマークのpermalinkがitem
要素のrdf:about
属性として設定されているので、これをlink
要素の値として設定しなおしてやれば良さそう。
ということで、LDRのためにはてブの新着ブックマークのフィードのlink
要素の値をユニークにするPipeを書いた。多くの人は自分のコンテンツへの被ブックマークをトラッキングするために使うと思うので、必要がないと思われる(コンテンツの内容知ってるから)blockquote
要素を削除したりしてある。
エントリのペース上がってきたな。