MyMiniCity巡回用rubyスクリプトを作ってみた

| コメント(0) | トラックバック(0)
作ってみたというよりは改造したが正解ですが(苦笑

MyMiniCityの巡回には、H.FujimotoさんのMyMiniCityサクサク巡回ツールを使わせていただいています。
しかしMyMiniCityはFlashが結構重たくて、出かけている時にAirEDGEのような遅い通信手段を使うと苦しいので巡回するのが難しくなります。
Flashを使わずに巡回するという観点では、コメントを残せないという欠点はあるもののkawadashとゆかいな仲間たちさんが公開しているmyminicityをみんなで育てるためのRubyスクリプトがありますが、これだとはてなついったー部のMyMiniCity部に登録されていない街には巡回することができません。また、Rubyはもちろんのこと、Rubygemsとhpricotが入ってないと動かないということもありました。
そこでkawadashさんのrubyスクリプトを参考にしてローカルの環境にアクセスする街のリストを持っておいて巡回するためのrubyスクリプトを作ってみました。


rubyスクリプトの中身は下記のようになりますので、適当な名前を付けて保存してください。
※rubyスクリプトの拡張子は「.rb」です。
require 'net/http'
$KCODE = 'u'
# Crawling
f = open("MyMiniCityList.txt" ,"r")
   while url =f.gets
      uri=URI.parse(url)
         begin
         #アクセス
         http=Net::HTTP.new(uri.host,80)
         #cookieを付けないとアクセスできないのでcookieもヘッダで渡す
         p http.get(uri.path+"?",{'Cookie'=>'X-Ref-Ok=1'}).message
         #タイムアウトした場合はもう一回アクセス
      rescue Timeout::Error => e
         puts '  caught ' + e
         retry
      end
      puts url
   end
   sleep 3#やりすぎるとアクセス拒否される可能性があるので、念のため3秒間ウェイト
f.close

巡回する街のリストはMyMiniCity.txtというファイルに以下のようにMyiniCityの街のurlを1行ずつ書きます。
※リストのファイルパスが通っていないと動かないので上記のrubyスクリプトは適宜変更が必要
http://mhori.myminicity.com/
http://aaa.myminicity.com/
http://bbb.myminicity.com/
http://ccc.myminicity.com/
   ・
   ・
   ・
http://zzz.myminicity.com/

私の環境ではAirEDGEでアクセスして入植者数が増えることを確認していますので、遅い回線を使っていてもちゃんと巡回が成立するのではないかと思います。コメントは残せないという欠点はありますが、使えないことはないということで。
で、使ってみようという奇特な人は巡回リストに私の街
http://mhori.myminicity.com/
を入れておいていただけるとありがたいな、と(笑

で、ここまで書いて思ったんですが、別にMyMiniCity専用ってことでもなくて、他にもアクセスすることで何かが起こるようなコンテンツなら使えるわけですね。htmlをローカルに保存しておいて後から見るなんてこともできなくはないだろうし。<プログラマじゃないのでいまいち分かってない(爆

追記:
rubyのインストールは、Ruby(Windows への手動導入)を参考にしました。

トラックバック(0)

トラックバックURL: https://horijp.com/mt/mt-tb.cgi/1673

コメントする

ウェブページ

Powered by Movable Type 7.8.2

このブログ記事について

このページは、masashiが2008年2月 3日 11:49に書いたブログ記事です。

ひとつ前のブログ記事は「HatenaBookmarkerプラグイン」です。

次のブログ記事は「リモート・デスクトップでローカル・ドライブを利用する方法」です。

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