Crystal xpath库或实现

时间:2017-10-07 04:26:45

标签: xpath crystal-lang

在解析HTML文件时有没有办法使用xpath?

我正在寻找一个Ruby Nokogiri等价物,但Crystagiri没有实现它(但是?)。还尝试了myhtmlmodest,但无济于事。

2 个答案:

答案 0 :(得分:5)

您不需要使用外部库! Crystal内置XML module,其中xpath support

这是一个基本的例子:

nodes = XML.parse_html(html_content)
nodes.xpath_nodes(query).each do |node|
    # do something
end

其中html_content是您的HTML字符串,query是您的xpath查询。

答案 1 :(得分:1)

hq

找到一个:maiha

它通过包装Crystal XML和myhtml来实现xpath并且运行良好。

require "hq"
node = Hq.parse("<html><body><div>82 users</div></body></html>")
node.xpath("/html/body/div").text # => "82 users"
node.xpath("/html/body/div").int  # => 82