去掉特殊空格(\t \v \f \xa0 \u0020 \u3000 \u00A0  )

我们在做爬虫的时候,经常回遇到一些特殊的空格形式,如果不对这些空格进行妥善的处理,很可能会污染我们的数据。

不同的空格种类

一般我们所认识的正常空格为 0x20 这种也就是我们直接在键盘上敲击的空格。但是还有很多其他的空格形式。

  • \t:水平制表符
  • \v:垂直制表符
  • \f:换页符
  • \xa0:不间断空白符
  • \u0020:半角空格(英文符号),代码中常用的
  • \u3000:全角空格(中文符号),中文文章中使用
  • \u00A0:不间断空格,主要用在office中,让一个单词在结尾处不会换行显示
  •  :HTML 中的空格表示形式

去掉空格的两种方法

使用正则表达式去掉空格

import re
re.sub(r'\s', '', msg)

借助 unicodedata 这个库,这个库里有一个 normalize 函数,可以将其他特殊的空格转换为标准的空格。

import unicodedata as ucd

ucd.normalize('NFKC', msg).replace(' ', '') 

REFERENCE

[1] python剔除空格\u3000: https://zhuanlan.zhihu.com/p/348461462
[2] 三种空格unicode(\u00A0,\u0020,\u3000)表示的区别: https://www.jianshu.com/p/4317e3749a13
[3] 网页爬虫中\xa0、\u3000等字符的解释及去除: https://blog.csdn.net/pengjunlee/article/details/104674623/

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值