通过将自定义元素转换为ASCII来实现HTML Unescape?

时间:2015-01-12 12:31:23

标签: python unicode escaping

我需要从字符串中取消一些HTML实体。

但是对于像“’“”'这样的少数字符,我想用最近的ASCII替换。所有其他人都需要被剥夺。

我怎样才能在Python中这样做?我尝试了以下代码片段,但它并不像我想要的那样“最接近”。

import HTMLParser
import unicodedata
parser = HTMLParser.HTMLParser()
parsed = parser.unescape("‘")
nearest = unicodedata.normalize('NFKD', parsed).encode('ascii','ignore')
上面的代码中

nearest为空。我可以为HTMLParser.unescape提供一个参数,将其转换为ASCII引号吗?我想提供这样的自定义映射:{'& lsquo':''','& rsquo':'''}其中地图中的项目应转换为ASCII。

xml.sax.parse有一些API unescape(html_text, entities={' ': ' ', """: '"'}),HTMLParser的内容类似。

0 个答案:

没有答案