Notebook
Search…
lxml库
  • lxml可直接读取html文件,不需要其他操作
  • lxml需要自己的编译器来解析html文件
parser = etree.HTMLParser(encoding="gbk")
html = etree.parse(html, parser=parser) # 输入为html文件,增加解析器
  • lxml返回的结果需要利用tostring将单个对象转换为字节(不能直接对list使用此方法),再利用decode解码为文字。
answers = html.xpath('//*/div[@class="l-tbody"]/div[@class="art-text"]/p')
answer = ""
for i in answers:
i = etree.tostring(i, encoding='gbk')
i = i.decode('gbk')
i = re.sub(r' |\n|\r|\t|&#13|;|', "", i)
answer = answer + "\n" + re.sub(r'<.*?>', front, i)
Copy link