网页源代码中的奇怪符号

时间:2011-06-19 14:37:02

标签: ruby string encoding hpricot

我遇到了问题 我尝试使用Hpricot

包含一个UTF-8的网页并使用俄语文本

问题是我得到带有一些奇怪符号的俄语文本,当我尝试将(iconv)从UTF-8转换为windows-1251或ASCII

时出现错误

此页面http://market.yandex.ru/model-spec.xml?modelid=929123&hid=90548

所以

require 'rubygems'
require 'open-uri'
require 'hpricot'
require 'net/http'

url = "http://market.yandex.ru/model-spec.xml?modelid=929123&hid=90548"
f = open(url).read
doc =  Hpricot(f)
html = doc.search("th.b-properties__title")
html.each do |h|
puts h.inner_html
end

这个来源是UTF-8但是!有几个奇怪的符号,如“\ u {2192}”

1 个答案:

答案 0 :(得分:2)

所以, 我解决了 我在Windows上使用PowerShell并使用chcp 65001以UTF8输出所有内容 这就是问题所在!