## 微博评论爬取出现“U+200E、U+202E和U+202C”奇怪字符的原因是什么?如何解决?

ID:19644 / 打印

## 微博评论爬取出现“u+200e、u+202e和u+202c”奇怪字符的原因是什么?如何解决?

python爬取微博正常评论出现奇怪字符的原因

在爬取微博评论时,你可能会遇到一些奇怪的字符串,如u+200e、u+202e和u+202c。这些字符不会影响文本的正常显示,但会干扰后续处理。

原因:方向格式控制符

u+202e和u+202c是方向格式控制符,用于控制文本的显示方向。u+202e表示从右向左显示,u+202c表示取消方向格式。因此,当评论中包含这些字符时,字符顺序会被打乱。

解决方案:删除方向格式控制符

为了获得正常的文本,需要删除这些方向格式控制符。可以使用正则表达式:

reversedre = re.compile(r'u202e(.*?)(?:u202c|$)', re.dotall)

然后,使用以下代码替换评论中的特殊字符:

import re  s = 'u202ecbau202cdefu202eihgu202c' s = reversedre.sub(lambda m: m[1][::-1], s)

输出:

cbadefghi

注意:

执行此操作时,请确保文本中没有其他需要从右向左显示的内容。

上一篇: 微博评论文本乱码:为什么爬取的微博评论全是杂乱字符,如何解决?
下一篇: 为什么使用 -c 参数后,filebeat 仍然优先加载 /etc/filebeat.yml?

作者:admin @ 24资源网   2025-01-14

本站所有软件、源码、文章均有网友提供,如有侵权联系308410122@qq.com

与本文相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。