Я открываю html-файл в шаблоне Hugo и запускаю его через beautifulSoup и использую его для поиска определенного div. Затем я использую .decompose (), чтобы избавиться от целого тега и завернуть его в str (), чтобы я мог записать его обратно в файл, но он удаляет другие символы.
print (soup) показываетme испорченный вывод
homeHtml = 'layouts/index.html'
with open(homeHtml) as f:
soup = BeautifulSoup(f, 'html.parser')
removeDiv = soup.find("div", {'class': 'removeMe'})
removeDiv.decompose()
myText = str(soup)
with open(homeHtml, 'w') as f:
f.write(myText)
Вывод с печатью (суп) -
{{ define "main" }}
<div class="hero tall">
<div class="container">
<h1>{{ i18n "home_hero_title" | safeHTML }}</h1>
<div class="buttons flex">
<div class="flex1 tar mr1m">
<a " class="dib" getting-started href="{{ " rellangurl | }}">{{ i18n "home_hero_getting_started" | safeHTML }}</a>
</div>
<div class="flex1 tal ml1m">
<a " become-a-sponsor class="dib" href="{{ " rellangurl | }}">{{ i18n "home_hero_sponsor" | safeHTML }}</a>
</div>
</div>
</div>
</div>
<div class="page-content">
<div class="wrapper">
<div class="">
</div>
</div>
</div>
{{ end }}
Он испортил часть разметки:
<div class="flex1 tal ml1m">
<a " become-a-sponsor class="dib" href="{{ " rellangurl | }}">{{ i18n "home_hero_sponsor" | safeHTML }}</a>