2008年6月23日 星期一

RubyfulSoup

HTML/XML Parser
Beautiful Soup(@Python)的Ruby binding

document
http://www.crummy.com/software/RubyfulSoup/documentation.html
http://www.crummy.com/software/BeautifulSoup/documentation.html
gem上面有,叫rubyful_soup(gem 1.2的速度是1.1的N倍,記得更新)
require 'Rubyful_Soup'

把HTML裝到一個string變數裡面(這裡用text)
soup = BeautifulSoup.new(text)

用find_all方法可以找出所有標籤和他的內容
soup.find_all('a') 或是 soup.find_all('input') 之類,他會回給你Tag物件的陣列

Tag物件可以直接用Hash的形式取得屬性,並用contents方法取得被tag包住的內容。如果內容只是一個字串,也可以用string方法取得。

比如說:
<a href="link.html">Content</a>

tag = find_all('a')[0]

tag['href'] = "link.html"
tag.string = "Content"

沒有留言:

張貼留言