首页  >  问答  >  正文

ruby - Nokogiri 抓取网页乱码如何解决?

最近在帮同学在一个网站上抓取一些东西,比如 http://www.sell001.com/110178 上面的服装图片,标题和价格等等。

这个网站有点奇怪,他 meta 里面没有声明 charset,然后我用 Nokogiri ,也没有指定特定的 encoding。

抓了一些图片和链接都是可以的,但是碰到有中文的情况时它就乱码了。

我看官方文档 http://www.nokogiri.org/tutorials/parsing_an_html_xml_document.html,
Nokogiri 可以指定 encoding,比如 doc = Nokogiri.XML('<foo><bar /><foo>', nil, 'EUC-JP')
我试了指定一些比如 gbk 等等,都无效。。

这种情况该如何解决?

巴扎黑巴扎黑2761 天前744

全部回复(1)我来回复

  • 阿神

    阿神2017-04-22 09:02:21

    雷雷

    => #(文档:0x3fc3974355f4 {
    名称=“文档”,
    孩子们= [
    #(DTD:0x3fc397424bf0 { name = "html" }),
    #(元素:0x3fc39741fc18 {
    名称=“html”,
    属性 = [
    #(属性:0x3fc39740fa20 {
    名称 =“xmlns”,
    值=“http://www.w3.org/1999/xhtml”
    })],
    孩子们= [
    #(文字“rn”),
    #(元素:0x3fc3973da190 {
    名字=“头”,
    孩子们= [
    #(文字“rn”),
    #(元素:0x3fc3973cf6dc {
    名称=“标题”,
    kids = [ #(Text "九天国际A218-网商园")]
    }),

    utf-8正常解析。。。

    回复
    0
  • 取消回复