Saturday, November 28, 2009

Web Spidering Dengan Gem Spidr

Spidr adalah library Ruby web spider yang bersifat serba guna yang didesain agar mudah digunakan dan cepat pada saat pemrosesan. Spidr dapat melakukan spider / crawler pada tag a, iframe, dan frame di sebuah atau banyak domain sekaligus dimana menggunakan nokogiri untuk melakukan parsing HTML pada halaman web yang dikunjungi.

Walaupun masih versi beta, Spidr memiliki fitur-fitur menarik seperti melakukan black-list atau white-list URL, dapat melakukan pause proses spidering, melakukan skip terhadap halaman atau link tertentu, dapat melakukan restore terhadap session. Berikut ini adalah contoh kode ruby untuk melakukan spider sebuah situs:

#!/usr/bin/ruby

require 'rubygems'
require 'spidr'

i = 1
url_file = File.open('spider.txt', 'w')
Spidr.start_at('http://www.railsmine.net/') do |spider|
spider.every_url { |url|
puts "#{i}. #{url}"
if (url_file)
url_file.puts("#{i}. #{url}")
end
i = i + 1
}
end
url_file.close
puts "Done. All URLs has been saved to spider.txt"


Instalasi:

gem install spidr


  

No comments:

Post a Comment

© Railsmine