python3 Lxml和BeautifulSoup解析网页出问题输出有问题, 求指教!

各位大神好:
下面这几句代码输出网页解析的结果为什么结果很难看:

 import lxml.html
broken_html = '<ul class=country><li>area<li>population</ul>'
tree = lxml.html.fromstring(broken_html)
cc = lxml.html.tostring(tree, pretty_print=True, method='html').decode()
print(cc)

下面是输出结果:

 <ul class="country">
<li>area</li>
<li>population</li>
</ul>

尽管闭合了标签,但是完全看不出嵌套关系了。上面的decode()是为了将前面的输出bytes类型转换成str类型。

而使用BeautifulSoup同样出错

 from bs4 import BeautifulSoup
soup = BeautifulSoup(broken_html, 'html.parser')
ccc = soup.prettify()
print(ccc)

结果,标签都补错了:

 ”<ul class="country">
 <li>
  area
  <li>
   population
  </li>
 </li>
</ul>”

第一次发帖,求各位大神给我解释下,多谢!

为什么,中间的代码直接变成网页了,。。。。。

不能以纯文本发帖吗?

这个主要是这些类库对于这个格式支持有限,你这个需要用文本工具等自己再去格式化。