admin管理员组

文章数量:1576257

问题描述

使用lxml.etree.parse()解析html文件,该方法默认使用的是“XML”解析器,所以如果碰到不规范的html文件时就会解析错误,报错代码如下:

lxml.etree.XMLSyntaxError: Opening and ending tag mismatch: meta line 4 and column 

问题解决

自己创建html解析器,增加parser参数

from lxml import etree

parser = etree.HTMLParser(encoding="utf-8")
tree = etree.parse("test.html", parser=parser)
r_list = tree.xpath('/html/head/title')

本文标签: 爬虫报错文件lxmlhtml