pythonhtmlembedwritetofile

how to embed html to html file using Python


file.html:

<!DOCTYPE html>
<html lang="en-us">

<head>
    <title>Hey</title>
</head>

<body>
 <div class='element'></div>
</body>
</html>

Python code:

html = '<div id="child">Hello</div>

I want to embed the html in the Python code into the html file inside the div with class "element". How can I achieve this?


Solution

  • You can do such changes using BeautifulSoup as below. You can read more about BeautifulSoup

    from bs4 import BeautifulSoup as Soup
    
    with open('<file_path>') as f: 
       soup = Soup(f)
    
    elementDiv = soup.find('div', {"class": "element"}) # find div with class name as element
    newDiv = soup.new_tag('div') # adds a new tag
    newDiv['id'] = "child"
    newDiv.string = "Hello"
    elementDiv.append(newDiv) # appends the newDiv within the elementDiv
    
    print(soup)