2012-10-14 23 views
0

我剛剛在ruby on rails上啓動了一天,我在遊蕩可以使用puts函數從外部頁面上的頁面獲取div的內容。使用'puts'從外部域獲取信息

puts "http://www.example.com #about"

會是這樣的工作?或者你需要整個頁面,然後放置你想要的那一部分?

此外,如果「example.com」#about div上的內容不斷變化,則會不斷更新其輸出,或者每次頁面刷新時它只會運行腳本?

回答

1

open-uri庫(用於獲取頁面)和Nokogiri gem(用於解析和檢索特定內容)可以幫助解決這個問題。

require 'open-uri' 
require 'nokogiri' 

doc = Nokogiri::HTML(open('http://www.example.com/')) 

puts doc.at('#about').text 
1

puts不會那樣工作。 Ruby使解析HTML相當容易。查看Nokogirl庫,並且可以使用xpath查詢來找到要打印的div。我相信如果div發生變化,您將需要重新打開該文件,但我對此並不積極 - 您可以輕鬆測試它(或者此處的某人可以確認或拒絕該聲明)。