[Twitter] Perl/CGIが動く普通のサーバーでつぶやく方法

Twitter関連の何かをしたいとき、本当は、CPANなんかにある「Net::Twitter」関連のモジュールをインストールするのがてっとり早いんですが、普通のPerl/CGIが動くサーバーは、CPANすら自由に動かすことができないので、別の方法で実現する必要があります。

では、具体的にどんな方法があるか?
私が思い浮かぶ一番簡単な方法は、RSSフィードを生成して、それを使ってつぶやかせることです。RSSフィードさえあれば、それをTwitterに送るサービスはいくつもありますので、比較的簡単に実現することができます。

では、具体的にやってみましょう。


■PerlでRSSフィードを生成する。(RSS 2.0の方が簡単なので 2.0で生成してます。)
※当然ですが、このまま記述しても、環境によって違うので動きません。ソースの一部だけですし(笑)

#
# RSS 2.0 フィード生成 サンプルソース
#
sub rss_20 {

open(RSS,"> $rss_file_name") || &error;

my ($week, $month, $day, $time, $year) = split /\s+/, scalar(localtime());
my $now  = "$week, $day $month $year $time +0900";

print RSS <<END;
<?xml version=\"1.0\" encoding=\"UTF-8\" ?>
<rss
 xmlns:dc=\"http://purl.org/dc/elements/1.1/\"
 xmlns:content=\"http://purl.org/rss/1.0/modules/content/\"
 version=\"2.0\">
<channel>
 <title>ロボットのいる生活。</title>
 <link>http://b1.robot.am/</link>
 <language>en</language>
 <description>キリ番を報告</description>
 <lastBuildDate>$now</lastBuildDate>
 <item>
 <title>[$time] ブログ「ロボットのいる生活。」は、$cnt アクセスを通過しました。</title>
 <link>http://b1.robot.am/?cnt=$cnt</link>
 <description>
 ♥このお知らせ機能は、TwitterのAPI(Net::Twitterなど)を使用しないで実現してます。
 このため、CGIの動く一般的なレンタルサーバーにも組み込み可能です。
 詳しくはこちら → http://b1.robot.am/
 </description>
 <category>Counter</category>
 <dc:creator>avalon1982</dc:creator>
 <pubDate>$now</pubDate>
 <guid isPermaLink=\"true\">http://b1.robot.am/?cnt=$cnt</guid>
 </item>
</channel>
</rss>
END
close(RSS);
}

※日時を変更してもURLが変わらないと変わったと認識されなかったりするので、パラメータとして、カウンター値を設定してます。実際には何も使っていません。(拾えることは拾えるんですけど。)


■Yahoo! PipesでRSSフィードを統合する。
上記で生成したRSSフィードをそのまま、twitterfeedなどに送ってしまってもいいんですが、私は一旦Yahoo! Pipesに入れています。
この理由は、複数同じような実現したいものがある場合(上記のプログラムを複数アイテム仕様に変更するのはイベントが同時に起こるわけではないので意外と大変です)、あるいはブログ本体と配信元を揃えたい場合、Yahoo! Pipes経由にした方が便利だからです。 流したくない内容のフィルタリングもできますし。


■Yahoo! Pipesで統合したフィードをtwitterfeedなどに登録する。


以上でできあがりです。いかがでしょうか?



| コメント(0)
twitterに送る tumblrに送る

コメントする




このページを送る。

twitterに送る tumblrに送る

読む。 (↓こちらに配信中)

À propos de l'auteur


SINCE 2007/05/23 (4501)

トイデジまとめ

私が購入したVQ1005/VQ1015/VQ5090/DIGITAL HARINEZUMIを中心にまとめました。

メルマガ

このブログのメルマガです。

メールアドレスを入力してください:

配信: FeedBurner




このブログ記事について

このページは、avalonがSeptember 29, 2009 11:30 PMに書いたブログ記事です。

ひとつ前のブログ記事は「Smoke and Hot Air」です。

次のブログ記事は「Twitter 2009/09/29 タイムライン」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

December 2009

    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

全記事一覧(4501


Googleボットチェッカー
track feed
Yahoo!ボットチェッカー ブログランキング・にほんブログ村へ
MSNボットチェッカー copygator




blogram投票ボタン
あわせて読みたいブログパーツ
OpenID対応しています OpenIDについて