Nokogiri,open-uri和Unicode字符

问题描述 投票:25回答:8

我正在使用Nokogiri和open-uri来获取网页上标题标签的内容,但是在重音字符方面遇到了麻烦。处理这些的最佳方法是什么?这是我在做什么:

require 'open-uri'
require 'nokogiri'

doc = Nokogiri::HTML(open(link))
title = doc.at_css("title")

此时,标题看起来像这样:

Rag \ 303 \ 271

而不是:

Ragù

我如何让nokogiri返回正确的字符(例如,在这种情况下为ù?)>

以下是示例网址:

http://www.epicurious.com/recipes/food/views/Tagliatelle-with-Duck-Ragu-242037

我正在使用Nokogiri和open-uri来获取网页上标题标签的内容,但是在重音字符方面遇到了麻烦。处理这些的最佳方法是什么?这是我在做什么:...

ruby unicode screen-scraping nokogiri open-uri
8个回答
11
投票

[当您说“看起来像这样”时,您是否正在查看此值IRB?它使用C样式转义表示字符的字节序列来转义非ASCII范围字符。


61
投票

摘要:


36
投票

我遇到了同样的问题,Iconv方法行不通。 Nokogiri::HTMLNokogiri::HTML.parse(thing, url, encoding, options)的别名。


6
投票

尝试像这样设置Nokogiri的编码选项:


1
投票

您需要将要抓取的网站(此处为epicurious.com)的响应转换为utf-8编码。


0
投票

仅添加交叉引用,此SO页面提供了一些相关信息:


0
投票

Tip:


0
投票

将Nokogiri :: HTML

© www.soinside.com 2019 - 2024. All rights reserved.