注: Rubyは2.1.0からSemantic Versioningを採用しています。 Ruby 2.1.1, 2.1.2等はバグ修正やセキュリティfixのみを含むため、リファレンスとしては2.1に統一しています。
以前、phpで簡単な辞書アプリを作ったり、twitterの翻訳botを作ったりしたのだけど、その時はgoogleのAPIと英語学習サイトのiknowのAPIを使っていた。 ikowで「ruby」という単語の情報を取得した場合 http://api.iknow.co.jp/items/matching/ruby.xml Google翻訳APIのページ http://code.google.com/intl/ja/apis/ajaxlanguage/documentation/ 今、サーバを止めている状態なので、そのアプリは動いてないんだけど、ちょっとまた翻訳APIを使ってみようと思った。 そこで、以前androidもくもく勉強会でhさんにMicrosoftの翻訳APIはかなり正確だと言われたのを思い出し、試してみた。 Microsoftの翻訳APIを使うには「AD697D10EC7A375
ネットワークプログラミングで面倒なのが、通信相手にバイト列しか送れないためプロトコルをシリアライズ方法から考えないといけないかったり、複数のクライアントに対応しようとするとスレッドやらイベント駆動やらを考えないといけないところで、なかなか本質的なロジックの実装に手を付けられずもどかしくなります。 そのあたりの面倒な部分をまとめて良きに計らってくれるRPCライブラリを作っておくと良さそうです。 とはいえ、RPCレイヤーはネットワークプログラミングの中でも速度と信頼性に大きく影響する部分でもあります。実装を丸々隠蔽されてしまうと、後になってカスタマイズできずに困ったことになるかもしれません。 最初のプロトタイピングとして簡単に使えるが、カスタマイズも効くような柔軟性が欲しいところです。 そこでRubyの高速なイベント駆動IOライブラリであるRevと、バイナリベースのシリアライズ形式であるMes
プログラミング手法は、われわれの多くがソフトウェア開発業界に足を踏み入れたときから大きな変化を遂げてきた。開発ツールだけでなく、複雑な問題に対するソリューションを明示するために利用する言語も変化した。 今日、ソフトウェアの開発を仕事にする人々は複数の言語を駆使する。通常、彼らには必ず複数のプログラミング言語でアプリケーションを開発した経験がある。多くのアプリケーションを実装するに当たり、「ダイナミック言語」と呼ばれるクラスの言語が優先的に選ばれるようになった過程が興味深いので、ここでそれを見ていこう。 本稿はこのタイプの言語について、なぜ人気が高いのかを考え、これらのうちPerl、Python、そしてRubyを中心に、主な仕様や各言語の違いをいくつか理解できるよう見ていく。 ダイナミック言語とは何か? 技術的には、実行時に機能の修正が可能なものをダイナミック言語という。どういうことかという
価格.comとかは製品一覧の表示をJavaScript使っているのでHpricotやMechanizeだけだと情報をとれないっぽい。 そこでrubyからIEを立ち上げてBotのようにIEを操作して情報を取得しているっぽいwatirというライブラリを試してみた。 やってることの流れとしては watirを使用して「検索する」をクリック。情報の一覧のURLを取得する ↓ Hpricotを利用して取得したURL先をクロールする ↓ スペックのテーブル部分だけを引っ張ってきてhtmlに吐き出す という感じです 検索オプションの設定や、「次へ」のクリックなどをはめんどくさいのではぶいてます。 require 'rubygems' require 'watir' require 'hpricot' require 'open-uri' require 'nkf' # # openするショートカットメソッ
スクレイピングのチュートリアルを書いてみた。 参考:http://nokogiri.rubyforge.org/nokogiri/Nokogiri.html まだまだたくさんのクラスやメソッドがあるが(読んでない)、HTMLのスクレイピングに限定すれば多分これくらいで十分。 2014-02-16追記 なんかたくさんブックマークされていることに気づいたので、サンプルコードのRuby1.9/2対応のアップデート。 Mechanize周りも修正。WWW::Mechanize → Mechanize 等 (0) 前提知識 Ruby、HTML、DOM、CSSセレクタまたはXPath (1) クラス構造の理解 Nokogiri::HTML::Document < Nokogiri::XML::Document < Nokogiri::XML::Node < Object Nokogiri::XML::
2007/12/25 「そういえばあのretryの話、どう思う?」、「誰も使ってないから害悪が多いっていう話は説得力ありますよね」、「じゃあなくすか……、うん、なくしといて」、「あ、決まっちゃった(笑)」――。 まつもとゆきひろと、笹田耕一。いま、世界が注目するプログラミング言語「Ruby」の生みの親と、開発コアメンバーの2人は、こともなげにRubyの仕様を記者の目の前で変更してしまった。Rubyの開発はどのように行われ、どこへ向かおうとしているのか。現行のバージョン1.8系から大きく様変わりする次期開発版「Ruby 1.9」のリリースを12月25日に控えた2人に、師走の秋葉原で話を聞いた(文中、敬称略)。 Rubyの仕様は密室で決まる!? 冒頭に紹介した2人の会話は、「retry」というRubyの文法の2種類ある使い方のうち、これまでほとんど使われた形跡がない方を文法仕様から取り除くかど
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く