如何通过标记匹配删除元素

时间:2017-05-22 07:34:55

标签: python html django

我想从存储html的变量中删除由特定元素/类包围的部分,但我不知道如何。

例如,以下html文档存储在变量" content"

<div class="content">
  <h1>content</h1>
  <p>content<p>
  <p>content</p>
<div>

<!-- want to delete from here -->
<div class="Footer">
 <div class=Footer-item>
  ...
  ...

 </div>
</div>

我尝试实现如下

from urllib.parse import urlparse

newcontent = content.find("div", {"class":"Footer"}).extract()

但是,发生了以下错误

TypeError: slice indices must be integers or None or have an __index__ method

如果你有一个好的解决方案,请告诉我。

1 个答案:

答案 0 :(得分:0)

您可以使用BeautifulSoup来解析html文档。

from bs4 import BeautifulSoup

markup = "......<div class='footer'> ...</div>"
soup = BeautifulSoup(markup,"html.parser")
other_tags = soup

soup.find('div',class_='footer').decompose()

print (other_tags)