最近笔者尝试使用一些文字数据,发现有很多奇怪的东西
比如:
乍一看数据看着挺正常的,但是:
Possibly the best police drama series since "police story" and "naked city".
"
是什么,不只是 "
还有’
“
... 很多,但是,仔细观察会发现它们都是成对出现的,而且形式也很一致。
实际上,它是在这段数据中有html标签,处理方法:
python代码:
tree = etree.fromstring("<html>" + text + "</html>") //text 为String 数据
print(count, tree.text)
这个时候就会有新的问题:
lxml.etree.XMLSyntaxError: xmlParseEntityRef: no name, line 1, column 3283
经笔者排查,发现是因为文字里面有一些不是html标签,但是使用&符号的文字,解决方法,将这些&替换成&
text = text.replace(' & ', ' & ').replace('& ', '& ')
但是还是会有问题:
lxml.etree.XMLSyntaxError: Entity 'eacute' not defined, line 1, column 4318
这是因为,é
在这里不能被识别
方法:
text = text.replace('é', 'é').replace('è', 'è').replace('&euro', '€')
解决