Как скопировать и заменить элемент и его дочерние элементы в Python на Beautiful Soup? - PullRequest
0 голосов
/ 28 мая 2018

Итак, у меня есть два HTML-файла, и у них обоих есть div с идентификатором htmlbody.Я хочу проверить, совпадает ли элемент htmlbody в одном файле с элементом htmlbody в другом файле.Если это не так, я хочу скопировать элемент htmlbody и заменить его в файле, который отличается.Пожалуйста, смотрите мой код ниже.

Я пытался использовать Модификацию древовидных документов здесь https://www.crummy.com/software/BeautifulSoup/bs4/doc/#append

import codecs
from bs4 import BeautifulSoup 

def getMainFile():
    #opens and pareses the main html file
    main_html = codecs.open("index.html", 'r')
    soup = BeautifulSoup(main_html, 'html.parser')
    #assignes the HTML content of the main file to a variable.
    html_content = soup.find(id="htmlbody")
    return html_content

#User Html file
  def getUserFile():
     user_html = codecs.open("userone.html", 'r')
     soup = BeautifulSoup(user_html, 'html.parser')
     soup.prettify()
     html_content = soup.find(id="htmlbody")
     return html_content


 #Checks files
 if getMainFile() == getUserFile():
    print("all good")
 else:
    new_content = getMainFile()
    user_html = codecs.open("userone.html", 'r')
    soup = BeautifulSoup(user_html, 'html.parser')

  with open("userone.html", "w") as file:
      file.write(str(soup.prettify()))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...