2009-02-14 2 views
4

Как вы ищете исходный веб-сайты код с рубином, трудно объяснить, но Херес код делает это в питонаПоиск Сайты Содержание

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

Этот вопрос является дубликатом ; код точно такой же. Это имя пользователя было «PHP», это имя пользователя «python». Что тут происходит? – Bkkbrad

ответ

3

Вот один из способов:

require 'open-uri' 
word = "How to ask" 
open('http://stackoverflow.com') do |f| 
    puts "Found it #{word}" if f.read =~ /#{word}/ 
end 
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 
Смежные вопросы