У меня есть структура входного XML, как показаноКак обернуть несколько тегов под новым тегом в Beautifulsoup?
<sometag> <a></a> <b></b> <c> <d></d> </c> </sometag>
Теперь мне нужно, чтобы обернуть все между <sometag>...</sometag>
к новому тегу, который будет ребенок тегом для sometag
Желаемой структуры будет
<sometag> <newtag> <a></a> <b></b> <c> <d></d> </c> </newtag> </sometag>
Как это можно достичь?
Я знаю, что я могу использовать функцию обертывания и распаковки дважды, чтобы добиться того же.
soup = BeautifulSoup("<sometag> <a></a> <b></b> <c> <d></d> </c> </sometag>",'xml')
soup.sometag.wrap(soup.new_tag('newtag'))
soup.sometag.unwrap()
soup.newtag.wrap(soup.new_tag('sometag'))
print soup
Но есть ли другой лучший метод?