実践スクレイピング/第42回 Ruby/Rails勉強会@関西

今日は第42回Ruby/Rails勉強会@関西。「実践スクレイピング」というテーマで、電源検索サイトモバイラーズオアシスのデータを集めるために行ったスクレイピングについてお話しさせていただきました。

会場で教えていただいたこと。

  • IRB.conf[:ECHO] = nil でirbの応答がでないように設定可能
  • irb –noecho でも可

okkezさん、cyrossさん、ありがとうございます!

位置情報サイトのAndoroid対応まとめ

WMではGPSが効かないー とのお声をいただいたので、対応できるかな?と思って調べていたところ、なぜかモバイラーズオアシスがAndoroid携帯のブラウザでも動くようになりました。

Twitter/さきら:@mogya お、場所とれました。表示されました。便利です。

WindowsMobileでも動くようにしたいのですけど、安定してブラウザから位置情報を取得できる方法が見つかっていないので、今のところちょっと手が出せないでいます。

それはさておき。Andoroid端末に対応するために調べたページのまとめです。

エミュレーター

AndroidエミューレータでWebKitウェブブラウザを起動する手順:MediaTechnologyLabs(MTL):メディアテクノロジーラボ ブログ

を参考にインストールしました。

geolocation

AndroidのgeolocationでGPSを使う方法-冬通りに消え行く制服ガールは、夢物語にリアルを求めない。-subtech

にあるとおり、GoogleGearsが使えます。

Chromeなんかだと、何も考えずに google.gears.factory.create を呼び出せるのですが、Andoroidでは、
ResourcesandTools-GearsAPI-GoogleCodeにあるgears_init.jsをロードしてあげないと動かないので注意。最初これではまりました。

if(!navigator.geolocation) navigator.geolocation = google.gears.factory.create(‘beta.geolocation’);

っていうふうに書いておくと、 HTML5とgearsでコードを共有することができますね。

Andoroid携帯、手元にないので、どんなブラウザだと動くのかとか、全部の機種で動くのかとか自信がないです。モバイラーズオアシスにアクセスすると自動でAndoroid用ページにジャンプするはずなので、興味のある方は是非試してみて結果を教えてくださいませ。

html5 number inputで数字以外が入力できてしまう

HTML5になって、input要素にtype=”number”というのが指定できるようになる事になっていて。現行でも対応済みっぽい挙動を示すブラウザがいくつかあるんだけど、なんだか納得のいかない挙動。

↑100の後ろで、「a」とか押してみて?

opera.png←Opera9.8で試した結果
number inputというからには、数字以外を押しても無視される事を期待していたのだけれど、現に「a」って押したら「100a」になってしまう。

実験用HTMLファイル
test.html

上記で試した挙動は以下の通り。

  • Opera9.80:数字以外も入力できる。ただし、submitした時、数字以外が含まれていると、valueが空文字に置き換えられる。
  • Chrome4.1.249.1045:数字以外も入力できる。POSTもできてしまう。
  • FireFox3.6.2:数字以外も入力できる。POSTもできてしまう。
  • Safari4.0.5:数字以外も入力できる。POSTもできてしまう。

自分がなんか勘違いしてたりするかなぁ?

仕様見ると、「User agents must not allow the user to set the value to a string that is not a valid floating point number. (ユーザーエージェントは、ユーザーが妥当な浮動小数点数でない文字列をその値にセットできるようにしてはいけません。)」って書いてあるんだけど・・・

メイドさんのお引っ越しとそれに伴うおねぼうのおわび

photo by xtcbz

メイドめーるで、メイドさんから届くはずだった一部のメールが送信されていませんでした。ごめんなさい。具体的には、9時より前に届くはずだったすべてのメールが送信に失敗していました。現在この不具合は解消しているため、明日以降は正常に配信される予定です。

前回の遅延からずっと検討していた、サーバの移転を実施しました。これまで、自分が経営しているほとんどのサービスが一台のサーバに詰め込まれていたのですが、これにより、負荷やサービスの状況に応じて振り分けられるようになり、以前みたいに他のサービスの巻き添えになって落ちてしまう可能性がぐんと下がっています。

で、今朝は新しいサーバでの初めての動作だったのですが、設定が不十分で、ちゃんと動作していませんでした。ちゃんとテストできていなかったことをお詫びいたします。現在この不具合は解消しているため、明日以降は正常に配信される予定です。

linodeに移行中

photo by aka_kath

さくらインターネットの7800円の専用サーバに長いことお世話になっていたのですが、Linodeの便利さに惚れ込んだので、サーバを引っ越し中です。

メールサーバは、先日、自前運用からGoogleAppsへ移行しました。

現在、*.mogya.comの各サービスを移行中。

というわけでこの記事は、MovableTypeの移行がうまくいっていることのテストを兼ねています。てへ。