搜索网站内容

时间:2009-02-14 16:11:22

标签: ruby

你如何使用ruby搜索网站源代码,很难解释但是在python中执行它的代码

import urllib2, re
word = "How to ask"
source = urllib2.urlopen("http://stackoverflow.com").read()
if re.search(word,source):
     print "Found it "+word

2 个答案:

答案 0 :(得分:3)

这是一种方式:

require 'open-uri'
word = "How to ask"
open('http://stackoverflow.com') do |f|
  puts "Found it #{word}" if f.read =~ /#{word}/
end

答案 1 :(得分:2)

如果您想要做的就是搜索jcrossley3给了您答案。如果你想做一些更复杂的事情,你应该看一个HTML解析器,它可以让你像DOM树一样对待网站。看看为什么那么好hpricot gem才能做到这一点。

 require 'hpricot'
 require 'open-uri'
 doc = open("http://qwantz.com/") { |f| Hpricot(f) }
 doc.search("//p[@class='posted']")
 (doc/"p/a/img").each do |img|
   puts img.attributes['class']
 end