如何使用 BeautifulSoup 添加 <br> 标签?
How to add <br> tags with BeautifulSoup?
假设我有
<p>Hello World</p>
可以 BeautifulSoup 添加一个
标签吗?
<br><p>Hello World</p>
最初我可以通过以下方式解决这个问题:
soup = BeautifulSoup("<p>Hello World<p>")
soup = BeautifulSoup(re.compile('(<p>)', '<br>', soup.prettify())
但问题是在更复杂的 html 的实际使用中,.prettify() 通过添加额外的空格和行弄乱了 html。
我查看了文档,但它甚至没有提到
<br>
根本没有标签。
可以使用soup.insert()
函数
>>> br = soup.new_tag('br')
>>> br
<br/>
>>> soup = BeautifulSoup("<p>Hello World</p>")
>>> soup.insert(0,br)
>>> soup
<br/><p>Hello World</p>
insert()
函数在任意数字位置插入标签。这里我们指定为 0
所以它被插入到开头。
假设我有
<p>Hello World</p>
可以 BeautifulSoup 添加一个
标签吗?
<br><p>Hello World</p>
最初我可以通过以下方式解决这个问题:
soup = BeautifulSoup("<p>Hello World<p>")
soup = BeautifulSoup(re.compile('(<p>)', '<br>', soup.prettify())
但问题是在更复杂的 html 的实际使用中,.prettify() 通过添加额外的空格和行弄乱了 html。
我查看了文档,但它甚至没有提到
<br>
根本没有标签。
可以使用soup.insert()
函数
>>> br = soup.new_tag('br')
>>> br
<br/>
>>> soup = BeautifulSoup("<p>Hello World</p>")
>>> soup.insert(0,br)
>>> soup
<br/><p>Hello World</p>
insert()
函数在任意数字位置插入标签。这里我们指定为 0
所以它被插入到开头。