如何从python中正确关闭的标签中恢复文档?

时间:2013-12-18 20:40:03

标签: python html

这是我的问题

我有一个示例文本,如

text="""<!--translated from:

The Dutch Royal Library

"""

现在我尝试从标签中删除此文本,但我总是使用此代码

得到此错误
t = html.fromstring(text)
ctext = t.text_content()

我的错误是

Traceback (most recent call last):
  File "test.py", line 31, in <module>
    t = html.fromstring(text)
  File "/usr/lib/python2.7/dist-packages/lxml/html/__init__.py", line 634, in fromstring
    doc = document_fromstring(html, parser=parser, base_url=base_url, **kw)
  File "/usr/lib/python2.7/dist-packages/lxml/html/__init__.py", line 535, in document_fromstring
    "Document is empty")
lxml.etree.ParserError: Document is empty

我追踪了我发现移除未封闭的错误

我已经尝试过使用BeautifulSoup

这是我的代码

soup = BeautifulSoup(text)
print soup.prettify()

但没有用,所以有人可以帮助我吗?

1 个答案:

答案 0 :(得分:1)

尝试删除未关闭的标记:

soup = BeautifulSoup(text[4:])
print soup.prettify()

然后BeautifulSoup将能够找到内容。您可以在documentation page

上获得有关此库的更多信息