告発/再審請求

Just another WordPress.com site

Twitter APIから取得したテキストのハイパーリンクを生成(Ruby)

leave a comment »

Twitter APIから取得したテキストをHTMLに変換するための公式ライブラリ – xmallocのプログラミングノート.

昨夜このページを見つけてからRubyのライブラリについて調べたのですが、情報が乏しくて時間がかかりました。

Rubyのライブラリ自体は、見当を付けて、
sudo gem install twitter-text
でインストール出来ました。

使い方に関する情報はほとんど見つからず、
https://github.com/mzsanford/twitter-text-rb

README.rdoc
を参考にしました。

具体的には次のようにメソッドを定義しました。

require ‘rubygems’

require ‘twitter-text’
の宣言をやっておきます。

def html_link(x)
	include Twitter::Extractor
	usernames = extract_mentioned_screen_names(x)
	include Twitter::Autolink
	html = auto_link(x)
	return html
end

というメソッドを定義しました。extract_mentioned_screen_namesに文字列の変数を渡すと、@付きのスクリーンネームを配列に取り込むようです。ここに格納されたものだけが、リンクの変換の対象になるみたいです。有効なアカウントのチェックもしているのかもしれないです。
それで再度auto_linkに文字列を渡しますが、ここでURLと、先ほど配列に登録されたTwitterのスクリーンネームがリンクに変換されるみたいです。

ちなみにirbで実行すると有効にはならないリンクが生成されました。単純に文字列を置換しているだけはなさそうです。

あとは次のような感じでメソッドを呼び出しています。使うのはツイートの本体部分のみです。

h[“text”] = html_link(i.text);

Written by 廣野秀樹

2011/05/15 @ 10:35

カテゴリー: Ruby

Tagged with

コメントを残す