美文网首页
python中,把‘&#’ ‘&#x开头的字符串转换成中文

python中,把‘&#’ ‘&#x开头的字符串转换成中文

作者: 公子小白123 | 来源:发表于2020-09-27 08:54 被阅读0次

(一)

爬虫时经常遇到'/u'开头的unicode编码的字符串,这时通过decode()来解决.

但偶尔也会遇到以‘&#’ 或者‘&#x’开头的字符串, 这是HTML、XML 等 SGML 类语言的转义序列(escape sequence)。它们不是「编码」。

如果以‘&#‘ 开头,后接十进制数字,

如果以‘&#x’开头,后接十六进制数字。

在python中的解决方法是:

importhtml

a ='外观'

print(html.unescape(a))

# 输出:外观

希望对你有用

(二)

Python中escape和unescape

Python处理HTML转义字符

在抓网页数据经常遇到例如>或者 这种HTML转义符,抓到字符串里很是烦人。

比方说一个从网页中抓到的字符串

p ='<abc>'

用Python可以这样处理:

import html

p ='&lt;abc&gt;'txt= html.unescape(p)print(txt)

#这样就得到了txt= ''

如果还想转回去,可以这样:

import cgi

q = cgi.escape(html)print(q)

       #这样又回到了 html = '&lt;abc&gt'

相关文章

网友评论

      本文标题:python中,把‘&#’ ‘&#x开头的字符串转换成中文

      本文链接:https://www.haomeiwen.com/subject/wxviyktx.html