首页 > 解决方案 > 如何添加到 HTML 元素?

问题描述

如何div使用元素 ID 在 Python 中添加 HTML?

例如,如果我在名为“test.html”的文件中有以下 HTML 代码:

<div id="insertHere">
</div>

我想将以下行插入<li> Item 1 </li>到 id 为“insertHere”的 div 元素中。所以我希望生成的标记看起来像这样:

<div id="insertHere">
   <li> Item 1 </li>
</div>

我如何在 Python 中做到这一点?我尝试执行以下操作:

myfile = open('test.html', 'w')
myfile.write('<li> Item 1 </li>')
myfile.close()

但问题myfile.write在于它没有给我一个选项来指定将列表项放置在 id 为“insertHere”的 div 中。

我想这将类似于prepend()Javascript 中的函数。

标签: pythonhtml

解决方案


你可以使用BeautifulSoup

from bs4 import BeautifulSoup

# Importing 
with open("doc.html", "r") as file:
  html = file.read() 


# Changing 

soup = BeautifulSoup(html)

myId = soup.find(id='insertHere')

new_tag = soup.new_tag("li")
new_tag.append("Item 1")

myId.append(new_tag)

html = str(soup)

# Saving

with open("doc.html", "w") as file:
  file.write(html)

输出:

<div id="insertHere">
<li>Item 1</li>
</div>

推荐阅读