Удалите все скрытые элементы в HTML, используя Pyquery в Python
У меня есть кусок HTML-кода, где я должен удалить скрытые элементы из него. Я пробовал следующий код
from pyquery import PyQuery
html_data = '''
<div style="display: none;">This is a hidden div.</div>
<p>This is another paragraph.</p>
<span style="display: none;">This is a span</span>
<div>This is a div.</div>
'''
pq = PyQuery(html_data)
pq(':hidden').remove()
pq.html()
pq.remove(':hidden')
pq.html()
Это не удаление скрытых элементов. Любая идея, как удалить эти скрытые элементы
1 ответ
Поскольку pyquery не поддерживает псевдоклассы, такие как:hidden, я добавил свой собственный класс ("myhide"), чтобы использовать его в качестве селектора. Поэтому я использовал следующий код для удаления скрытых элементов
from pyquery import PyQuery
html_data = '''
<div style="display: none;" class="myhide">This is a hidden div.</div>
<p>This is another paragraph.</p>
<span style="display: none;" class="myhide">This is a span</span>
<div>This is a div.</div>
'''
pq = PyQuery(html_data)
pq('.myhide').remove()
pq.html()
Таким образом, результат получается так
This is another paragraph
This is a div