一、方法描述
在 BeautifulSoup 库中,insert()
方法会在指定的位置在一个 Tag
元素的孩子列表中添加一个元素。insert()
方法的行为类似于 Python 列表对象上的 insert()
方法。
二、语法
insert(position, child)
三、参数
-
position
:新 PageElement
应当插入的位置。
-
四、返回类型
insert()
方法不会返回任何新的对象。
五、示例
示例 1
在下面的例子中,在 <b>
标签的位置 1 处添加了一个新的字符串。最终解析后的文档显示了结果。
from bs4 import BeautifulSoup, NavigableString
markup = '<b>Excellent </b><u>from Yoagoa</u>'
soup = BeautifulSoup(markup, 'html.parser')
tag = soup.b
tag.insert(1, "Tutorial ")
print(soup.prettify())
输出:
<b>
Excellent
Tutorial
</b>
<u>
from Yoagoa
</u>
示例 2
在下面的例子中,使用 insert()
方法依次将字符串列表插入到 HTML 标记中的 <p>
标签中。
from bs4 import BeautifulSoup, NavigableString
markup = '<p>Excellent Tutorials from Yoagoa</p>'
soup = BeautifulSoup(markup, 'html.parser')
langs = ['Python', 'Java', 'C']
i = 0
for lang in langs:
i += 1
tag = soup.new_tag('p')
tag.string = lang
soup.p.insert(i, tag)
print(soup.prettify())
输出:
<p>
Excellent Tutorials from Yoagoa
<p>
Python
</p>
<p>
Java
</p>
<p>
C
</p>
</p>