As tags de script e todo o seu conteúdo podem ser removidos do HTML com o BeautifulSoup, ou devo usar Expressões regulares ou outra coisa?
python
html
beautifulsoup
Sam
fonte
fonte
[s.extract() for s in soup(['iframe', 'script'])]
Observe que para usar várias tags, o parâmetro deve ser uma lista'<script class="blah">a</script>baba<script id="blahhhh">b</script>'
:? É o mesmo?<html><head></head><body><p>baba</p></body></html>
Resposta atualizada para quem precisa para referência futura: A resposta correta é.
decompose()
Você pode usar maneiras diferentes, masdecompose
funciona no local.Exemplo de uso:
Muito útil para se livrar de detritos como 'script', 'img' e assim por diante.
fonte
decompose
eextract
é que o último retorna a coisa que foi removida, enquanto o primeiro apenas o destrói. Portanto, esta é a resposta mais precisa para a pergunta, mas os outros métodos funcionam.remove
conteúdo. Freqüentemente usado para limpar HTML de tags e formatação desnecessárias.Conforme declarado na ( documentação oficial ), você pode usar o
extract
método para remover todas as subárvores que correspondem à pesquisa.fonte