我使用BeautifulSoup通过lxml
解析器解析HTML。但是我在<table>
内遇到了一个没有任何结束标记的文件:
<table id='reportTable' class='report-table' style='width:auto' cellspacing='0'><tr>
<th>Номер<br>поезда<th>Дата<br>отправления<th>Маршрут<th>Причина<th>Комментарий<th>Станция ...
虽然<table>
标记已正确关闭。
答案 0 :(得分:0)
就我个人而言,我自己也遇到过这个问题,我使用tidylib通过HTMLTidy 5运行整个文档。说我同意C. Feenstra lxml解析器可以容忍格式错误的HTML。如果你有html,你真的不能用lxml解析器解析那么试试这个:
from tidylib import tidy_document
badHtml = "<table id='reportTable' class='report-table' style='width:auto' cellspacing='0'><tr><th>Номер<br>поезда<th>Дата<br>отправления<th>Маршрут<th>Причина<th>Комментарий<th>Станция ..."
options = {"output-bom": 0, "quiet": False, "word-2000": True,
"output-encoding": 'utf8', "output-xhtml": 1, "add-xml-decl": 0,
"tidy-mark": 0, "drop-proprietary-attributes": True,
"show-warnings": False, }
tidiedHtml, errors = tidy_document(badHtml, options)
然后使用&#34; tidiedHtml&#34; for BeautifulSoup