ElementTree错误,无法使用Python/Sublime解析html文件

ElementTree错误,无法使用Python/Sublime解析html文件,python,html,parsing,sublimetext2,Python,Html,Parsing,Sublimetext2,我试图解析几千个html文件,并将变量转储到csv文件(excel电子表格)中。我遇到了几个障碍,但第一个障碍是:我无法让它正确解析文件。下面是一个简短的解释,python代码和回溯信息 使用Python&submite解析html文件时,我遇到了几个错误。工作原理:在文件“中的“.html”出现之前,它运行良好。它不执行该循环。它将遍历打印所有文件很好。它还创建csv文件并创建标题(虽然不在单独的列中,但我可以稍后询问) 问题似乎出在iftree=ET.parse(HTML_PATH+“/”+

我试图解析几千个html文件,并将变量转储到csv文件(excel电子表格)中。我遇到了几个障碍,但第一个障碍是:我无法让它正确解析文件。下面是一个简短的解释,python代码和回溯信息

使用Python&submite解析html文件时,我遇到了几个错误。工作原理:在文件“中的“.html”出现之前,它运行良好。它不执行该循环。它将遍历
打印所有文件
很好。它还创建csv文件并创建标题(虽然不在单独的列中,但我可以稍后询问)

问题似乎出在if
tree=ET.parse(HTML_PATH+“/”+文件)
片段中。我已经用几种不同的方式写了这篇文章(例如,没有“/”和/或“文件”),到目前为止,我还没有解决这个问题

如果我能提供更多的信息,或者如果有人能告诉我其他文件,我将不胜感激。到目前为止,我还没有找到任何解决这个问题的方法

非常感谢你的想法

//C

回溯:

文件“/Users/C/data/Folder\u NS/data\u parse.py”,第34行,在 tree=ET.parse(HTML_路径+“/”+文件) parse中的文件“/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/xml/etree/ElementTree.py”,第1182行 parse(源,解析器) 文件“/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/xml/etree/ElementTree.py”,第656行,在parse中 提要(数据) 提要中的文件“/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/xml/etree/ElementTree.py”,第1642行 自我提升错误(v) 文件“/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/xml/etree/ElementTree.py”,第1506行,存在错误 提出错误
xml.etree.ElementTree.ParseError:不匹配的标记:第63行第2列

您正在尝试使用xml解析器解析HTML,而有效的HTML并不总是有效的xml。您最好在包中使用HTML解析库

将更改为

import lxml.html
# ...
tree = lxml.html.parse(HTML_PATH + '/' + file)

你试过“\”或“\ \”吗?@是的,我试过了。它不起作用。不过谢谢你的建议,它奏效了!现在它运行循环并点击文件夹中的每个html文件,但不会解析html文件。我想我将不得不在这方面工作一段时间,如果有必要的话,可能会发布另一个问题。非常感谢。Mayny谢谢,我正在寻找同样的东西,然后我用lxml.html替换了xml.etree,没有更多的错误:)
import xml.etree.ElementTree as ET
# ...
tree = ET.parse(HTML_PATH + '/' + file)
import lxml.html
# ...
tree = lxml.html.parse(HTML_PATH + '/' + file)