2017-05-07 96 views
2

嘿,我正在尋找一些水晶HTML解析庫。與紅寶石nokogiri類似的東西。我有一個工作正則表達式,但寧願一個HTML解析庫,因爲HTML +正則表達式==不好。謝謝。是否有任何HTML解析庫?

+0

心不是引入nokogiri晶兼容? – marmeladze

+0

@marmeladze沒有Ruby庫是你不能使用Java同樣的方式「水晶兼容」來自JavaScript的圖書館,它們是完全不同的語言, – RX14

+0

https://github.com/veelenga/awesome-crystal#htmlxml-parsing –

回答

4

Crystal標準庫中的標準方式是XML.parse_html。這會給你一個XML::Node,它有一個非常漂亮的界面。

如果需要使用CSS選擇器,你可以使用Crystagiri,雖然本來我沒有看到過STDLIB的發行多少好處。

2

經過幾個小時的谷歌搜索,我剛剛發現約myhtml,modestCrystagiri。所有這些都是HTML解析庫。

+0

添加鏈接到您的答案 –

0

我是Crystagiri的創建者。這是水晶的HTML解析器庫(如驚人Nokogiri紅寶石寶石,我不會假裝說Crystagiri做多的引入nokogiri,但你可以用它來使用CSS選擇器

婁一個基本的例子:。

require "crystagiri" 

doc = Crystagiri::HTML.from_url "http://example.com/" 
puts doc.css("li > strong.title") { |tag| puts tag.node} 
# => <strong class="title"> .. </strong> 
# => <strong class="title"> .. </strong> 

由於水晶郎,Crystagiri是三個時間比Nokogiri快(accroding到我的測試)。

相關問題