有人可以看看这个。我认为拨打此电话时,UTF-8字符无效。
Nokogiri::HTML(open("http://www.next.co.uk/x502062s2"))
如果有办法解决这个问题?这是问题吗?我正在编写一个新的开源屏幕抓取器,用于产品信息捕获(当网站不提供Feed时),然后有人说我做了一些有点狡猾的事情: - )
答案 0 :(得分:2)
在将任何内容传递给Nokogiri之前,您可以对页面内容进行编码,并使用Iconv忽略所有无效的UTF字符。
我这样使用它:
ic = Iconv.new('UTF-8//IGNORE', 'UTF-8')
valid_string = ic.iconv(open('http://example.com').read)