wget和特殊字符

时间:2012-07-05 18:26:06

标签: character-encoding wget

我在本地使用wget来获取小型Web应用程序的静态快照。当我这样做时,生成的html文件会返回奇怪的字符而不是引号和撇号。

我该怎么做才能避免这种行为?

感谢。

6 个答案:

答案 0 :(得分:9)

我建议尝试:

--restrict-file-names=nocontrol

来源:http://www.win.tue.nl/~aeb/linux/misc/wget.html

答案 1 :(得分:6)

您需要指定--remote-encoding或许--remote-encoding=utf-8

答案 2 :(得分:1)

我遇到了同样的问题,但后来我发现我的浏览器显示网页错误的含义。例如在Firefox中我只需要更改View - >字符编码 - >的Unicode。

答案 3 :(得分:0)

我也遇到过这样的问题。看来我下载的页面是gziped。 您可以使用wget中的-S选项进行检查。 你会找到一个

  

内容编码:gzip

线。在这种情况下,我使用zcat来读取文件。

答案 4 :(得分:0)

似乎wget无法猜测编码,因此您需要在网络应用的html响应中使用此编码:

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

答案 5 :(得分:0)

我在浏览镜像时遇到了同样的问题(一个wget镜像,其中包含特殊字符和引号,显示为Unicode&#34; unknown char&#34;,?)。

问题变得与不同的服务器编码有关,而不是依赖于wget。原始服务器是旧的Windows + IIS安装,配置为使用ISO-8859编码提供HTML页面,而镜像是配置为提供UTF-8页面的Linux + Apache服务器。

解决方案是将Apache配置为提供ISO-8859页面,向正确的虚拟主机添加指令AddDefaultCharset ISO-8859-1