解析Nokogiri中的html doctype标签

时间:2011-04-14 00:44:39

标签: ruby nokogiri

如何解析doctype标签以从html文件中获取html版本?

尝试在xpath中使用doctype(或DOCTYPE或!DOCTYPE)作为参数会引发invalide表达式错误。

1 个答案:

答案 0 :(得分:5)

doctype不是文档的一部分,而是DTD的一部分

require 'rubygems'
require 'nokogiri'

html = <<EOF
<!DOCTYPE foo PUBLIC "bar" "qux">
<html>
</html>
EOF

doc = Nokogiri::HTML(html)

puts doc.internal_subset.name
puts doc.internal_subset.external_id
puts doc.internal_subset.system_id