【发布时间】:2014-06-28 08:39:39
【问题描述】:
我正在使用 python 3.4。
当我在 utf-8 文件上使用 urllib.request.urlretrieve(link, filename="file.html") 时,生成的 file.html 未正确编码。如何确保文件是使用 utf-8 编码的?
这种情况下如何实现.decode(utf-8)?
编辑
这是页面的原始部分:
« Écoute, mon peuple, je parle ;
Moi,Dieu,je suis ton Dieu !
Je ne t'accus pas pour tes 牺牲 ;
tes holocaustes sont toujours devant moi。
« Je ne prendrai pas un seul taureau de ton domaine,
pas un bélier de tes enclos。
Tout le gibier des forêts m'appartient
et le bétail des hauts pâturages。
« Si j'ai faim, irai-je te le dire ?
Le monde et sa richesse m'appartiennent。
Vais-je manger la chair des taureaux
et boire le sang des béliers ?
« Qu'as-tu à réciter mes lois,
à garder mon Alliance à la bouche,
toi qui n'aimes pas les reproches
et rejettes loin de toi mes paroles ? »
这就是我在保存的文件中得到的:
�“cute,mon peuple,je parle ;�
Moi,Dieu,je suis ton Dieu!�
Je ne t'accuse pas pour tes 牺牲;
tes holocaustes sont toujours devant moi。
� Je ne prendrai pas un seul taureau de ton domaine,
pas un b�lier de tes enclos。�
Tout le gibier des for �ts m'appartient
et le b�tail des hauts p�turages。
� Si j'ai faim, irai-je te le dire ?
Le monde et sa richesse m'appartiennent。�
Vais-je manger la chair des taureaux
et boire le sang des b�liers ?�
� Qu'as-tu � r�citer mes lois,�
�garder mon Alliance � la bouche,�
toi qui n'aimes pas les reproches
et rejettes loin de toi mes paroles ?��
我注意到在页面的某些部分,重音字符并不是真正的 utf-8 编码,但浏览器可以正确显示。例如,É 不是 É,当下载文件时,这似乎会导致问题。
【问题讨论】:
-
我不认为
urlretrieve重新编码任何东西。能举个例子吗? -
谢谢。如何在上面的代码中实现 HtmlParser?
-
看看下面的答案。
标签: python python-3.x urllib