Beautifulsoup Самый простой способ получить содержимое тега
Проблема в том, что contents
тега Beautifulsoup является списком, а не строкой. Таким образом, я должен использовать цикл for для получения содержимого внутри тега. Это громоздко. Есть ли лучший способ сделать это?
from bs4 import BeautifulSoup html_doc = u'<li><span class="def">1. <span class="cat">cat</span>example<span class="ex">ex</span></span></li>' soup = BeautifulSoup(html_doc) div = soup.find("span", class_='def') print div.contents result = '' for divcont in div.contents: result = result + unicode(divcont) print result
Вывод:
[u'1. ', <span class="cat">cat</span>, u'example', <span class="ex">ex</span>] 1. <span class="cat">cat</span>example<span class="ex">ex</span>
Строка 1. <span class="cat">cat</span>example<span class="ex">ex</span>
– это то, что я хочу, но мне нужен более простой метод ее получения.
- Получение имени атрибута, а не значения с BS4
- Использование BeautifulSoup для захвата всего HTML между двумя тегами
- Python beautifulsoup grab table
- Файлы BeautifulSoup и php / html
- Найти красивый суп в цикле возвращает TypeError
Использовать join
:
from bs4 import BeautifulSoup html_doc = u'<li><span class="def">1. <span class="cat">cat</span>example<span class="ex">ex</span></span></li>' soup = BeautifulSoup(html_doc) div = soup.find("span", class_='def') print(''.join(str(e) for e in div))
- Преобразуйте строку, разделенную двоеточием, в список – в список словарей … (Python)
- Анализ файлов pcap с помощью python / scapy – недостающие слои
- Получить число из тега span, используя запросы Python и Beautiful Soup
- Python BeautifulSoup получает текст из HTML
- Загрузите скребковую таблицу через BS4 в Pandas Dataframe
- Почему список python хранит каждый символ в тегах BeautifulSoup?
- Python BeautifulSoup findAll по атрибуту "class"
- Ускорение прекрасного супа
- Возможно ли изменить значение ссылки с помощью Beautifulsoup без воссоздания всей ссылки?
- selfClosingTags в BeautifulSoup
- Beautifulsoup не может найти