Я пытаюсь убрать хлам из зашумленного, глубоко вложенного HTML документа. Я хотел бы сохранить структуру страницы, просто очистите содержимое окружающих div
s.
Структура выглядит примерно так:
<div class="a">
...stuff...
<div>
...stuff....
<div class="my_class_of_interest">
....several levels deeper...
</div>
..stuff..
</div>
...stuff..
</div>
Я бы хотел чтобы стереть все, что находится за пределами div
, я хочу, но оставьте все внутри этого div
. Это код, который я пробовал:
for div in soup.find_all("div"):
if div.has_attr('class'):
if div['class'] == "my_class_of_interest":
continue
div.clear()
Но это стирает мои div
интереса, я подозреваю, потому что я очищаю его родительский элемент, и очистка идет полностью вниз. Есть ли способ очистить текст div
, не стирая вложенные div
s? Или есть способ лучше?