提取html某标签中文字时,文字中含有:“<sub>2</sub>O<sub>5</sub>”,导致提取的文字不符合预期。
解决方法:
#coding=utf-8from lxml import etreefrom HTMLParser import HTMLParserhtml = u‘‘‘<html> ???<span id="chTitle">退火对Nb<sub>2</sub>O<sub>5</sub>薄膜的折射率和厚度的影响</span></html>‘‘‘tree = etree.HTML(html)# 结果为:退火对Nbcontent1 = tree.xpath("//span[@id=‘chTitle‘]/text()")[0]print content1# 结果为:退火对Nb<sub>2</sub>O<sub>5</sub>薄膜的折射率和厚度的影响table = tree.xpath("//span[@id=‘chTitle‘]")[0]content2 = etree.tostring(table, method=‘html‘)print HTMLParser().unescape(content2)[19:-8]
Xpath 提取html整个元素(标签与内容)
原文地址:https://www.cnblogs.com/zhangtianyuan/p/8297117.html