До версии 3.0.5 BeautifulSoup обрабатывал содержимое
Я пробовал:
for textarea in soup.findAll('textarea'):
contents = BeautifulSoup.BeautifulSoup(textarea.contents)
textarea.replaceWith(contents.html(text=True))
Но я получаю ошибки. Я не могу найти это в документации, и альтернативные парсеры не помогают. Кто-нибудь знает, как я могу анализировать текстовые области как HTML?
Редактировать:
Пример HTML:
<textarea class="ks-lazyload-custom">
<div class="product-view product-view-rug">
Foobar Womble
<div class="product-view-head">
<img src="tps/i1/fo-25.gif" />
</div>
</div>
</textarea>
Ошибка:
File "D:\src\cross\tserver\src\tools\sitecrawl\BeautifulSoup.py", line 1913,
in _detectEncoding '^<\?.*encoding=[\'"](.*?)[\'"].*\?>').match(xml_data)
TypeError: expected string or buffer
Я ищу способ взять элемент, извлечь содержимое, проанализировать его с BeautifulSoup, свернуть его в текст, а затем заменить содержимое исходного элемента (или заменить весь элемент) этим текстом. 1017 *
Что касается реального мира против спецификаций, то здесь он на самом деле не особенно актуален. Данные должны быть проанализированы, я ищу способ сделать это.