我终于设法解析了网站的一部分:
get '/' do
url = '<website>'
data = Nokogiri::HTML(open(url))
@rows = data.css("td[valign=top] table tr")
erb :muster
end
现在,我尝试在我的视图中提取特定的行。因此,我输入了我的HTML代码:
<%= @rows[2] %>
它实际上返回了代码,但是UTF8存在问题:
<td class="class_name"> </td>
相反,它说
<td class="class_name">�</td>
如何在nokogiri解析,erb和HTML生成期间确保UTF8?
请参阅:http : //www.nokogiri.org/tutorials/parsing_an_html_xml_document.html#encoding
在您的情况下,该文档似乎声明它是使用iso8859编码的:
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
您可以执行以下操作来强制Nokogiri将流视为UTF-8:
data = Nokogiri::HTML(open(url), nil, Encoding::UTF_8.to_s)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句