2014-12-27 92 views
3

我正在与BS库进行HTML解析。我的任务是删除头标之间的所有内容。所以如果我有<head> A lot of Crap! </head>那么结果应该是<head></head>。这是它的代码BeautifulSoup Library的HTML解析问题

raw_html = "entire_web_document_as_string" 
soup = BeautifulSoup(raw_html) 
head = soup.head 
head.unwrap() 
print(head) 

这工作正常。但我希望这些更改应该发生在包含整个html文档的raw_html字符串中。如何在原始字符串中反映这些命令,而不仅仅是在head字符串中?你能分享一个代码片段吗?

+2

使用'tag.clear()'如果你想清楚它给我的错误标签 – 2014-12-27 20:52:28

回答

2

您基本上要求如何从BS的soup对象导出一串HTML。

你可以这样来做:

# Python 2.7 
modified_raw_html = unicode(soup) 

# Python3 
modified_raw_html = str(soup) 
+0

“未定义的变量是:unicode” – hnvasa 2014-12-27 20:48:03

+0

@hnvasa我的错,我在想Python2。为Python3更新的答案。 – Jivan 2014-12-27 20:52:07

+0

ohk,解决了我的问题!谢谢! – hnvasa 2014-12-27 21:12:52