rubyでクローラーを書いてみた
2ちゃんねるのスレッド(dat落ち含む)タイトルを取得する。
#!/usr/bin/ruby -KU -w require 'net/http' require 'kconv' def getfile(url) content='' begin res = Net::HTTP.get_response(URI.parse(url)) if res.code == '200' content=res.body.toutf8 end rescue end content end def scanhref(url,re) getfile(url).scan(re) end scanhref( 'http://menu.2ch.net/bbstable.html', /<A HREF=(http\S+).*?>(.+?)<\/A>/ ).each do |url, title| scanhref( url+'subback.html', /<a href=\"(\S+)\".*?>\d+\:(.+?)<\/a>/ ).each { |u,t| print "#{u}<>#{t}\n" } scanhref( url+'kako/', /<A HREF=\"(\S+)\">subject.txt<\/A><\/TD>/ ).each { |u| print getfile(url+'kako/'+u[0]) } end