在进行网页爬虫分析时,遇到了一些特殊字符,通过网络搜索找到了解决方法,所以利用这篇博文将遇到的问题以及解决方法记录下来,方便回顾,也希望这篇博文能够帮助到大家。

\u200b \xa0 \u3000等特殊字符

这些特殊字符通常不在ASCII可见字符范围内,因此我们在浏览网页时看不到这些字符,但是在分析网页源码时会遇到。

方法一,利用split方法

处理这些字符最简单的方法是利用split方法去除。

参考博文:https://blog.csdn.net/wangbowj123/article/details/78061618

关键程序段(来自参考博文):

>>> s
'T-shirt\xa0\xa0短袖圆领衫,体恤衫\xa0'
>>> out = "".join(s.split())
>>> out
'T-shirt短袖圆领衫,体恤衫'

方法二,利用replace方法

使用split方法进行特殊字符的去除有个坏处就是原文中的空格与换行也会一并删除,原因是“split方法中不带参数时,表示分割所有换行符、制表符、空格”。如果文字中只有一两种特殊字符,也可以利用replace方法进行去除。

参考博文:https://blog.csdn.net/thewindkee/article/details/79890207

例程:

>>> s='T-shirt\xa0\xa0短袖圆领衫,体恤衫\xa0'
>>> s
'T-shirt\xa0\xa0短袖圆领衫,体恤衫\xa0'
>>> out=s.replace('\xa0','')
>>> out
'T-shirt短袖圆领衫,体恤衫'

这个方法可以避免将需要保留的空格和换行等符号删除,但是坏处是需要对每种特殊字符单独设置。

方法三,将split与replace方法结合

方法的原理是先将需要保留的制表符、换行符和空格等利用replace方法替换为特定的符号,然后利用方法一中的方法将其余的不需要保留的不可见字符去除,最后再利用replace方法还原原来的制表符、换行符和空格等。

例程:

>>> s='aaabbb\xa0 ccc\t ddd\n eee'
>>> s
'aaabbb\xa0 ccc\t ddd\n eee'
>>> print(s)
aaabbb  ccc      dddeee
>>> out=s.replace('\t','【制表符】')
>>> out=out.replace('\n','【换行符】')
>>> print(out)
aaabbb  ccc【制表符】 ddd【换行符】 eee
>>> out=''.join(out.split())
>>> print(out)
aaabbbccc【制表符】ddd【换行符】eee
>>> out=out.replace('【制表符】','\t')
>>> out=out.replace('【换行符】','\n')
>>> print(out)
aaabbbccc       ddd
eee
>>> out
'aaabbbccc\tddd\neee'

【爬虫笔记】关于 \u200b \xa0 \u3000等特殊字符相关推荐

  1. Python 网络爬虫笔记6 -- 正则表达式

    Python 网络爬虫笔记6 – 正则表达式 Python 网络爬虫系列笔记是笔者在学习嵩天老师的<Python网络爬虫与信息提取>课程及笔者实践网络爬虫的笔记. 课程链接:Python网 ...

  2. Python 网络爬虫笔记11 -- Scrapy 实战

    Python 网络爬虫笔记11 – Scrapy 实战 Python 网络爬虫系列笔记是笔者在学习嵩天老师的<Python网络爬虫与信息提取>课程及笔者实践网络爬虫的笔记. 课程链接:Py ...

  3. Python 网络爬虫笔记10 -- Scrapy 使用入门

    Python 网络爬虫笔记10 – Scrapy 使用入门 Python 网络爬虫系列笔记是笔者在学习嵩天老师的<Python网络爬虫与信息提取>课程及笔者实践网络爬虫的笔记. 课程链接: ...

  4. Python 网络爬虫笔记9 -- Scrapy爬虫框架

    Python 网络爬虫笔记9 – Scrapy爬虫框架 Python 网络爬虫系列笔记是笔者在学习嵩天老师的<Python网络爬虫与信息提取>课程及笔者实践网络爬虫的笔记. 课程链接:Py ...

  5. Python 网络爬虫笔记8 -- 股票数据定向爬虫

    Python 网络爬虫笔记8 – 股票数据定向爬虫 Python 网络爬虫系列笔记是笔者在学习嵩天老师的<Python网络爬虫与信息提取>课程及笔者实践网络爬虫的笔记. 课程链接:Pyth ...

  6. Python 网络爬虫笔记5 -- Beautiful Soup库实战

    Python 网络爬虫笔记5 – Beautiful Soup库实战 Python 网络爬虫系列笔记是笔者在学习嵩天老师的<Python网络爬虫与信息提取>课程及笔者实践网络爬虫的笔记. ...

  7. Python 网络爬虫笔记4 -- 信息标记与提取

    Python 网络爬虫笔记4 – 信息标记与提取 Python 网络爬虫系列笔记是笔者在学习嵩天老师的<Python网络爬虫与信息提取>课程及笔者实践网络爬虫的笔记. 课程链接:Pytho ...

  8. Python 网络爬虫笔记3 -- Beautiful Soup库

    Python 网络爬虫笔记3 – Beautiful Soup库 Python 网络爬虫系列笔记是笔者在学习嵩天老师的<Python网络爬虫与信息提取>课程及笔者实践网络爬虫的笔记. 课程 ...

  9. Python 网络爬虫笔记2 -- Requests库实战

    Python 网络爬虫笔记2 – Requests库实战 Python 网络爬虫系列笔记是笔者在学习嵩天老师的<Python网络爬虫与信息提取>课程及笔者实践网络爬虫的笔记. 课程链接:P ...

最新文章

  1. 微信小程序 wxml 中使用 js函数
  2. 针对数据 gnuplot画图 初试
  3. 免费直播 | 特邀大厂产品战略咨询顾问,详解数据驱动产品商业化
  4. ArcGIS 10.7如何获取矢量多边形所有折点的坐标(平面坐标和经纬度坐标)?
  5. 如何把python文件发给别人没_如何把自己写的python程序给别人用
  6. AKKA 集群中的发布与订阅Distributed Publish Subscribe in Cluster
  7. 少年,这有套《街霸2》AI速成心法,想传授于你……
  8. 区块链 State Machine Replication (SMR)是什么
  9. XenCenter为虚拟机C盘扩容
  10. php 复制到剪切板,兼容多种浏览器”复制到剪贴板”的解决方案
  11. 服务器重装系统之DELL
  12. 必要的系统组件未能正常运行,请修复Adobe Flash Player
  13. BTA分论坛现场直击|区块链+时下新科技,你了解多少?
  14. 目标检测透视变换数据增强包含label(yolov5格式)
  15. 根据父母身高预测儿子身高
  16. 温度指示报警电路设计报告
  17. 异地多活场景下的数据同步之道
  18. 谈谈 Ops(一):我的运维经历
  19. 汇编代码--立即数的概念与判断方法
  20. Android 音频(Audio)架构

热门文章

  1. c#中的Length和GetLength()的区别
  2. 虹科分享 | 虹科网络安全评级 | 2022年影响最大的七大黑客攻击
  3. 故事分享 | 33岁高中学历转行python,收获月薪19K,这位陶瓷厂工人逆天了!
  4. 电表及配电监控系统的智能化发展
  5. 「服务端」阿里云https如何免费申请
  6. 第9章 SQL INSERT INTO 语句教程
  7. 【网页设计】第 1 课 - 了解网页设计
  8. 信息系统安全导论第七章信息安全工程与信息安全审计
  9. SQL:查询近一年每个月的数据
  10. 高项论文练习--项目进度管理