我正在从已爬网的网站中清除文本,但是我不希望数据中包含任何html注释,因此我必须自己自行解析还是有现有的功能?
我尝试这样做:
from bs4 import BeautifulSoup as S
soup = S("<!-- t --> <h1>Hejsa</h1> <style>html{color: #0000ff}</style>")
soup.comment # == None
soup.style # == <style>html{color: #0000ff}</style>
要搜索表单HTML注释,可以使用以下命令bs4.Comment
:
from bs4 import BeautifulSoup, Comment
html_doc = '''
<!-- t --> <h1>Hejsa</h1> <style>html{color: #0000ff}</style>
'''
soup = BeautifulSoup(html_doc, 'html.parser')
# print comment:
comment = soup.find(text=lambda t: isinstance(t, Comment))
print( comment )
印刷品:
t
要提取它:
comment = soup.find(text=lambda t: isinstance(t, Comment))
# extract comment:
comment.extract()
print(soup.prettify())
印刷品:
<h1>
Hejsa
</h1>
<style>
html{color: #0000ff}
</style>
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句