RubyでHTMLを取得 - 検索エンジンを作ろう

7月 10th, 2009 admin Posted in 検索エンジン |

Rubyでつくる検索エンジン
星澤 隆
毎日コミュニケーションズ
売り上げランキング: 82686

この本を読んだので、僕も自分の検索エンジンを作ってみようと思いました。
しかもせっかくなので本を踏襲しながらもオリジナルで作ってみたいなと思ってしまった(よくある失敗の原因ですね)。

とりあえずdRubyの本を半年ぐらい借りており、持ち主に返したいのでdRubyをクローラーのところに使いたい。

クローラー・スパイダー

RUBY:
  1. require "hpricot"
  2. require "open-uri"
  3. require 'kconv'
  4.  
  5. uri = ARGV[0]
  6.  
  7. class Crowler
  8.   def initialize(uri)
  9.     @uri = uri
  10.     @title = nil
  11.     @description = nil
  12.     @src = nil
  13.   end
  14.  
  15.   def get
  16.     begin
  17.       doc = open(@uri)
  18.       @src = Hpricot(doc.read).toutf8
  19.     rescue => ex
  20.       return
  21.     end
  22.  
  23.     @title = (@src/:title).inner_html
  24.     desc_element = @src.search('meta[@name="description"]').first
  25.     @desc = desc_element ? desc_element["content"] : ""
  26.   end
  27. end
  28.  
  29. Crowler.new(uri).get

まとめ

面倒なところは飛ばしてとりあえず、小さいのを完成させよう

One Response to “RubyでHTMLを取得 - 検索エンジンを作ろう”

  1. プログラム初心者ですが、pealやrubyの必要性を感じています。rubyで検索エンジンもできてしまうのですね。他の記事も参考にさせていただきます。

Leave a Reply