python-beautifulsoup-删除一行代码
我开始学习美丽的群舞。我试图从html脚本中删除一行包含python-beautifulsoup-删除一行代码,python,html,web-scraping,beautifulsoup,Python,Html,Web Scraping,Beautifulsoup,我开始学习美丽的群舞。我试图从html脚本中删除一行包含的代码 文档中的大多数示例都针对整个标签(打开和关闭部分)。 是否可以只修改标记的一部分? 例如: </div> <div >Hello</div> <div data-foo="value">foo!</div> 你好 福! 如何仅删除代码的第一行?您可以使用BeautifulSoup指定无效标记,这将仅删除没有打开/关闭对应项的额外标记,同时保留其他标记: soup
的代码
文档中的大多数示例都针对整个标签(打开和关闭部分)。
是否可以只修改标记的一部分? 例如:
</div>
<div >Hello</div>
<div data-foo="value">foo!</div>
你好
福!
如何仅删除代码的第一行?您可以使用BeautifulSoup指定无效标记,这将仅删除没有打开/关闭对应项的额外标记,同时保留其他标记:
soup = BeautifulSoup(html_doc, 'html.parser')
invalid_tags = ['</div>']
for tag in invalid_tags:
for match in soup.findAll(tag):
match.unwrap()
print(soup)
soup=BeautifulSoup(html\u doc,'html.parser')
无效的_标记=['']
对于无效\u标记中的标记:
用于汤中的火柴。findAll(标签):
匹配。展开()
印花(汤)
结果:
<div>Hello</div>
<div data-foo="value">foo!</div>
你好
福!
您无需执行任何操作,它将自动修复
from bs4 import BeautifulSoup
html_doc = '''</div>
<div>World</div>
<div data-foo="value">foo!''' # also invalid, no closing
soup = BeautifulSoup(html_doc, 'html.parser')
print(soup)
从bs4导入美化组
html_doc=''
世界
“福!”也无效,没有关闭
soup=BeautifulSoup(html_doc,'html.parser')
印花(汤)
输出
<div>World</div>
<div data-foo="value">foo!</div>
世界
福!
unwrap()
用于移除而不是修复标记。不应该无效的\u标记=['']
是['']
?我不知道,但这也有效,可能是首选约定,将更新,谢谢。