如何查看爬取的 Unicode 阿拉伯字符串?

1 投票
5 回答
1540 浏览
提问于 2025-04-16 16:34

我用Python爬取了一些网页,去掉了网页中的HTML标签,只保存了一些内容。大部分网页不是英文的。现在我该如何查看这些爬取的内容,保持它们的原始语言呢?

举个例子,爬虫程序只把一行阿拉伯语的文本写入了一个txt文件:
u'\u0639\u0644\u0649'

但是当我在文本编辑器或浏览器中打开这个txt文件时,它看起来就是上面那样,所以基本上是人看不懂的。

有没有简单的方法可以把这个字符串显示成阿拉伯语呢?

谢谢,

5 个回答

0

在编程中,有时候我们会遇到一些问题,像是代码运行不正常或者出现错误。这种情况可能是因为我们没有正确理解某些概念或者使用了不合适的方法。解决这些问题的关键在于仔细检查代码,理解每一行的作用,以及它们是如何相互影响的。

如果你在学习编程,遇到困难是很正常的。建议你多看一些教程,或者向更有经验的人请教。同时,实践也是非常重要的,多写代码,多尝试不同的解决方案,才能更好地掌握编程的技巧。

记住,编程是一个不断学习和进步的过程,不要害怕犯错,错误往往是最好的老师。

>>> print u'\u0639\u0644\u0649'
على
1

你看到的代码不太容易理解,是因为你用了repr(s)来把字符串写入文件。repr的作用就是生成一种程序员能看懂的表示方式,这种方式对普通人来说不太友好。

如果你想把文本存储成任何支持Unicode的文本编辑器和浏览器都能看懂的格式,最好用UTF-8编码来保存:

import codecs

s = u'\u0639\u0644\u0649'
f = codecs.open('output.txt', 'w', 'utf-8')
f.write(s)
f.close()

如果你的浏览器或编辑器没有自动识别编码,记得手动设置成UTF-8。

1
>>> x= u'\u0639\u0644\u0649'
>>> open('x.html','w').write(x.encode('ascii','xmlcharrefreplace'))

在浏览器中打开 x.html 文件,它应该能正常显示。实际内容如下:

على

撰写回答