BeautifulSoup-добавление атрибута в тег

вопрос для вас здесь, я пытаюсь добавить атрибут к тегу здесь, задаваясь вопросом, Могу ли я использовать метод BeautifulSoup или должен использовать простую манипуляцию строками.

пример, вероятно, прояснит это, поскольку это странное объяснение.

как теперь выглядит HTML-код:

<option value="BC">BRITISH COLUMBIA</option> 

Как бы я хотел, чтобы это выглядело:

<option selected="" value="BC">BRITISH COLUMBIA</option> 

Спасибо за помощь!

1 ответов


легко с BeautifulSoup :)

>>> from bs4 import BeautifulSoup
>>> soup = BeautifulSoup('<option value="BC">BRITISH COLUMBIA</option>')
>>> soup.find('option')['selected'] = ''
>>> print soup
<html><body><option selected="" value="BC">BRITISH COLUMBIA</option></body></html>

атрибуты можно рассматривать как словарь. Итак, мы имеем {'value':'BC'} и добавить значение в словарь, мы просто делаем dict[key] = value