Trackback Auto-Discovery (Ruby編)
blogのエントリからTrackbackのURLを捜し求める方法がBlog Hacksという本に書いてあったのですが、自分でもRubyで実装してみました。テストスクリプト。
要は記事中にあるRDFを取ってきて、その中のtrackback:pingという要素がTrackback用のURLにあたるようです。コードで表現すると(@contentsにはエントリのHTMLが入っています)
@trackback_ping = []
@contents.scan(%r|<rdf:Description\s+([^>]+)>|){|attr|
attr[0].scan(%r|\s+([^=]+)="([^"]+)"|){|key, value|
@trackback_ping << value if key == 'trackback:ping'
}
}
@contents.scan(%r|<rdf:Description\s+([^>]+)>|){|attr|
attr[0].scan(%r|\s+([^=]+)="([^"]+)"|){|key, value|
@trackback_ping << value if key == 'trackback:ping'
}
}
これで何かを作ってみようと現在画策中。
コメント
コメントする
- 匿名でのコメントは受け付けておりません。
- お名前(ハンドル名可)とメールアドレスは必ず入力してください。
- メールアドレスを表示されたくないときはURLも必ず記入してください。
- コメント欄でHTMLタグは使用できません。
- コメント本文に日本語(全角文字)がある程度多く含まれている必要があります。
- コメント欄内のURLと思われる文字列は自動的にリンクに変換されます。
- 投稿ボタンを押してエラーがでなければ、投稿は成功しています。反映されるまでには少し時間がかかります。