【问题标题】:XML and accented charactersXML 和重音字符
【发布时间】:2012-09-17 21:18:48
【问题描述】:

我正在从这个website 中提取数据。我确实为我的 xml 使用了 UTF-8,与网站的字符集相同,所以我真的不明白为什么数据编码不正确。

例如,从this page 我得到Astrit Ajdarević 而不是Astrit Ajdarević,以及Standard Liège 而不是Standard Liège 等等......

详情:如何提取?

好吧,我正在使用WebHarvest 将 html 页面在解析之前转换为有效的 xml。

因此,对于上面的示例,我使用//div[2]/div[1]/div[2]/div[2]/div[2]/table/tbody/tr[1]/td[2]/text() 获取Astrit Ajdarević//*[@id="site"]//div[contains(./div/h2, 'Spieler')]//tbody/tr[2]/td[position()=3] 获取Standard Liège...

我希望这能回答你的问题:)


解决方案:

<html-to-xml>
     <http url="${link}" charset="utf-8"/>
</html-to-xml>

感谢 mactwixs

【问题讨论】:

  • 您的问题缺少重要的细节。你如何进行?
  • 我添加了一些细节。我希望它有助于澄清问题...
  • 您如何看待 Astrit Ajdarević ?观众能理解哪些字符
  • 我使用带有给定 xpath 的脚本来获取我的数据并将其存储在 xml 中...当我打开我的 xml(使用 sublime 或 gedit)时,我看到 Astrit AjdareviÄ&amp;#135;

标签: xml encoding utf-8 xquery non-ascii-characters


【解决方案1】:

您可能需要在 Web-Harvest 配置文件中将 UTF-8 设置为默认值,否则它不会被设置为默认值。还要确保您拥有最新版本的 Web-Harvest (2.1)

请参阅以下内容:

Manual - Config

Manual - HTTP Config

Similar Support Request

HTML that your browser resolves 还需要:

<meta http-equiv="content-type" content="text/html;charset=utf-8" />

如果这些都不起作用,我建议在 sourceforge 上提出支持请求。

【讨论】:

  • 非常感谢您的建议,我刚刚在检索网页时添加了charset="utf-8",它就像一个魅力...以后可能会遇到同样的问题:)
  • 好东西——很高兴能帮上忙。似乎有一两个人在 WH 论坛上也遇到了同样的问题。
猜你喜欢
  • 1970-01-01
  • 2021-07-22
  • 1970-01-01
  • 2021-12-02
  • 2017-06-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-05
相关资源
最近更新 更多