Используя BeautifulSoup, чтобы найти div, чтобы я мог его разложить (), но он испортил код Golang в разметке. Почему? - PullRequest
1 голос
/ 19 октября 2019

Я открываю 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>
...