嘿,我正在寻找水晶中的一些html解析库。类似于nokogiri的红宝石。我有一个正常的表达式,但更喜欢html解析库,因为html + regex == bad。感谢。
答案 0 :(得分:4)
Crystal标准库中的标准方法是XML.parse_html
。这将为您提供一个XML::Node
,它有一个非常好的界面。
如果你需要使用CSS选择器,你可以使用Crystagiri,不过我没有看到比stdlib提供的更多好处。
答案 1 :(得分:2)
经过几个小时的谷歌搜索后,我发现了myhtml,modest和Crystagiri。所有这些都是HTML解析库。
答案 2 :(得分:0)
我是Crystagiri的创造者。这是一个用于Crystal的HTML解析器库(就像令人惊叹的Nokogiri Ruby gem。我不会假装Crystagiri像Nokogiri那样做,但你可以使用CSS选择器。
Bellow一个基本的例子:
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>
感谢Crystal Lang,Crystagiri比Nokogiri快三倍(根据我的测试)。