写爬虫是一个发送请求,提取数据,清洗数据,存储数据的过程。在这个过程中,不同的数据源返回的数据格式各不相同,有 JSON 格式,有 XML 文档,不过大部分还是 HTML 文档,HTML 经常会混杂有转义字符,这些字符我们需要把它转义成可显示的字符。
什么是转义字符
在 HTML 中 <、>、& 等字符有特殊含义(<,> 是标签对,& 用于转义),他们不能直接写在 HTML 代码中,如果要在网页中显示这些符号,就需要使用 HTML 的转义字符串(Escape Sequence)来表示,例如 < 的对应的转义字符是 <,浏览器渲染 HTML 页面时,会自动把转义字符串换成可显示的字符。
转义字符(Escape Sequence)由三部分组成:第一部分是一个 & 符号,第二部分是实体(Entity)名字,第三部分是一个分号。 比如,要显示小于号(<),就可以写< 。
显示字符 | 说明 | 转义字符 |
---|---|---|
< | 小于 | < |
空格 | |
|
< | 小于 | < |
> | 大于 | > |
& | &符号 | & |
" | 双引号 | " |
© | 版权 | © |
® | 已注册商标 | ® |
python3.4 以上版本,可直接使用 html 模块下的 unescape 和 escape 方法。
>>> import html
>>> html.escape("1>2")
'1>2'
>>> html.unescape('a=1&b=2')
'a=1&b=2'
关注公众号「Python之禅」,回复「1024」免费获取Python资源