python处理html转义字符的方法详解


Posted in Python onJuly 01, 2016

本文实例讲述了python处理html转义字符的方法。分享给大家供大家参考,具体如下:

最近在用Python处理网页数据时,经常遇到一些html转义字符(也叫html字符实体),例如<> 等。字符实体一般是为了表示网页中的预留字符,比如>用>表示,防止被浏览器认为是标签,具体参考w3school的HTML 字符实体。虽然很有用,但是它们会极度影响对于网页数据的解析。为了处理这些转义字符,有如下解决方案:

1、使用HTMLParser处理

import HTMLParser
html_cont = " asdfg>123<"
html_parser = HTMLParser.HTMLParser()
new_cont = html_parser.unescape(html_cont)
print new_cont #new_cont = " asdfg>123<"

转换回去(只是空格转不回去了):

import cgi
new_cont = cgi.escape(new_cont)
print new_cont #new_cont = " asdfg>123<"

2、直接挨个替换

html_cont = " asdfg>123<"
new_cont = new_cont.replace(' ', ' ')
print new_cont #new_cont = " asdfg>123<"
new_cont = new_cont.replace('>', '>')
print new_cont #new_cont = " asdfg>123<"
new_cont = new_cont.replace('<', '<')
print new_cont #new_cont = " asdfg>123<"

不知道还有没有更好的办法。

另外stackoverflow上给出了在xml中处理转义字符的解答:python - What's the best way to handle  -like entities in XML documents with lxml? - Stack Overflow。

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python AES加密模块用法分析
May 22 Python
如何高效使用Python字典的方法详解
Aug 31 Python
Flask框架各种常见装饰器示例
Jul 17 Python
python文字转语音的实例代码分析
Nov 12 Python
在Python中字符串、列表、元组、字典之间的相互转换
Nov 15 Python
浅谈pytorch、cuda、python的版本对齐问题
Jan 15 Python
通过实例了解Python str()和repr()的区别
Jan 17 Python
解决Pycharm 导入其他文件夹源码的2种方法
Feb 12 Python
python爬虫开发之使用Python爬虫库requests多线程抓取猫眼电影TOP100实例
Mar 10 Python
Python网络爬虫四大选择器用法原理总结
Jun 01 Python
matplotlib基础绘图命令之bar的使用方法
Aug 13 Python
关于Python中进度条的六个实用技巧分享
Apr 05 Python
python简单读取大文件的方法
Jul 01 #Python
python编码总结(编码类型、格式、转码)
Jul 01 #Python
Python编码类型转换方法详解
Jul 01 #Python
Python面向对象编程中关于类和方法的学习笔记
Jun 30 #Python
Python中的time模块与datetime模块用法总结
Jun 30 #Python
详解Swift中属性的声明与作用
Jun 30 #Python
为Python的Tornado框架配置使用Jinja2模板引擎的方法
Jun 30 #Python
You might like
在VS2008中编译MYSQL5.1.48的方法
2010/07/03 PHP
解析如何屏蔽php中的phpinfo()函数
2013/06/06 PHP
php curl基本操作详解
2013/07/23 PHP
php实现用手机关闭计算机(电脑)的方法
2015/04/22 PHP
为你总结一些php系统类函数
2015/10/21 PHP
php实现简单的权限管理的示例代码
2017/08/25 PHP
PHP基于imagick扩展实现合成图片的两种方法【附imagick扩展下载】
2017/11/14 PHP
PHP7扩展开发之基于函数方式使用lib库的方法详解
2018/01/15 PHP
使图片旋转的3种解决方案
2013/11/21 Javascript
JavaScript定义类的几种方式总结
2014/01/06 Javascript
javascript中的原型链深入理解
2014/02/24 Javascript
基于javascript实现浏览器滚动条快到底部时自动加载数据
2015/11/30 Javascript
vuejs响应用户事件(如点击事件)
2017/03/14 Javascript
详解使用vue-cli脚手架初始化Vue项目下的项目结构
2018/03/08 Javascript
微信小程序实现的日期午别医生排班表功能示例
2019/01/09 Javascript
解决$store.getters调用不执行的问题
2019/11/08 Javascript
vue-axios同时请求多个接口 等所有接口全部加载完成再处理操作
2020/11/09 Javascript
elementUI同一页面展示多个Dialog的实现
2020/11/19 Javascript
[01:02]DOTA2辉夜杯决赛日 CDEC.Y对阵VG赛前花絮
2015/12/27 DOTA
matplotlib绘制符合论文要求的图片实例(必看篇)
2017/06/02 Python
Python绘制的二项分布概率图示例
2018/08/22 Python
Python 内置函数globals()和locals()对比详解
2019/12/23 Python
解决Python命令行下退格,删除,方向键乱码(亲测有效)
2020/01/16 Python
解决python DataFrame 打印结果不换行问题
2020/04/09 Python
TensorFlow tf.nn.conv2d_transpose是怎样实现反卷积的
2020/04/20 Python
水果花束:Fruit Bouquets
2017/12/20 全球购物
入党申请人的自我鉴定
2013/12/01 职场文书
优秀女职工事迹材料
2014/02/06 职场文书
2014年社区学雷锋活动总结
2014/03/09 职场文书
小学生环保演讲稿
2014/04/25 职场文书
秋天的图画教学反思
2014/05/01 职场文书
运动会班级口号
2014/06/09 职场文书
推普周活动总结
2014/08/28 职场文书
2014机关党员干部“正风肃纪”思想汇报
2014/09/15 职场文书
盗窃罪辩护词范文
2015/05/21 职场文书
2016元旦文艺汇演主持词
2015/07/06 职场文书