如何使用lxml删除这样的评论而不会丢失Apple iPhone 5s的值(Space Grey,16 GB)
<h1 class="_3eAQiD" data-reactid="144">
<!-- react-text: 145 -->
Apple iPhone 5s (Space Grey, 16 GB)
<!-- /react-text -->
</h1>
答案 0 :(得分:2)
使用Regex。
import re
a = '''<h1 class="_3eAQiD" data-reactid="144">
<!-- react-text: 145 -->
Apple iPhone 5s (Space Grey, 16 GB)
<!-- /react-text -->
</h1>'''
print re.sub("(<!--.*?-->)", "", a, flags=re.MULTILINE)
<强>结果:强>
<h1 class="_3eAQiD" data-reactid="144">
Apple iPhone 5s (Space Grey, 16 GB)
</h1>
使用lxml
import lxml.etree as et
x = et.fromstring(a, parser=et.HTMLParser(remove_comments=True))
print(et.tostring(x))