bs4: вставить новый тег в тег согласно определенному атрибуту - PullRequest
0 голосов
/ 06 июня 2018

После некоторых исследований я не могу найти адекватных решений: например, я хочу вставить тег 'b' в тег 'a', когда 'id = 2':

<?xml version"1.0 encoding="utf-8?>
<a id=1>
    <a id =2>
    </a>
</a>

IЯ думаю о чем-то вроде: soup.a.has_key('2').append(b) но это не работает ... Некоторая помощь?

1 Ответ

0 голосов
/ 06 июня 2018

Возможно, вы можете использовать

from bs4 import BeautifulSoup as bs
s="""
<a id=1>
    <a id =2>
    </a>
</a>
"""

soup = bs(s)
nt = soup.new_tag('b')
soup.find(id="2").append(nt)

Сначала новый тег <b> создается с помощью new_tag(), тег с id="2" обнаруживается с find(), а новый тег добавляется с append().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...