O pacote htmllaundry contém vários métodos Python acessíveis para limpeza marcação HTML ou realizar outras alterações comuns. & Nbsp; A limpeza é rigoroso o suficiente para ser capaz de limpar HTML colado do MS Word ou o Apple Pages. Este pacote também contém código de integração para z3c.form para fornecer campos que sanear automaticamente HTML em salvar.
A implementação é baseada na classe Cleaner de lxml.
Rotinas Cleanup
Todas as rotinas de limpeza pode ser invocada através da função sanitize único. Esta função leva uma seqüência de entrada como entrada e irá retornar uma versão limpa dessa cadeia. Aqui está um exemplo simples:
>>> From htmllaundry importação sanitize
>>> Sanitize ('Olá, mundo ')
'
Olá, mundo
'O método de desinfecção tem um parâmetro adicional opcional com um líquido de limpeza lxml exemplo, que pode ser usado para utilizar diferentes regras de filtragem. htmllaundry inclui três produtos de limpeza:
& Nbsp; * htmllaundry.cleaners.DocumentCleaner, que é o padrão mais limpo. Esta limpeza irá permitir que as etiquetas mais seguras, enquanto que eliminasse estilos inline e marcação inseguro.
& Nbsp; * htmllaundry.cleaners.LineCleaner é um produto de limpeza mais rigorosa que permite apenas alguns elementos em linha. Isso é útil em lugares onde você só querem aceitar a entrada de uma única linha, por exemplo, em títulos de documentos.
& Nbsp; * htmllaundry.cleaners.CommentCleaner só permite que um conjunto muito limitado de elementos HTML, e é projetado para ser útil para comentários de usuário fornecido.
Se você quer ir toda a maneira que você também pode usar StripMarkup para retirar todas as marcações a partir de sua entrada:
>>> From htmllaundry importação StripMarkup
>>> StripMarkup ('Olá, mundo ')
"Olá, mundo"
integração z3c.form
Se você quiser usar a integração z3c.form você deve usar o extra de z3cform para este pacote:
install_requires = [
& Nbsp; ....
& Nbsp; htmllaundry [z3cform]
& Nbsp; ...
& Nbsp;],
Além disso, você vai precisar carregar o ZCML. Em sua configure.zcml adicionar uma linha como esta:
Você pode então usar o tipo de campo htmlText em seus esquemas. Por exemplo:
zope.interface de interface de importação
zope esquema de importação
htmllaundry.z3cform de importação htmlText
classe IDocument (Interface):
& Nbsp; title = schema.TextLine (
& Nbsp; title = _ (u "Title"),
& Nbsp; required = True)
& Nbsp; description = htmlText (
& Nbsp; title = _ (u "Descrição"),
& Nbsp; required = True)
Por favor, note que o uso de htmlText não lhe dará automaticamente um widget WYSYWIG
O que é novo nesta versão:.
- Adicionar opção para higienizar para especificar um elemento envoltório diferente ou pular envolver completamente.
O que é novo na versão 1.9:
- Adicione MANIFEST.in para facilitar lançamentos não feitos de subversão.
- Corrija todos os produtos de limpeza para retirar javascript. Isso corrige um problema.
O que é novo na versão 1.8:
- Remover o link aplicação alvo de caminho de código codificado de sanitize. Isto faz com que seja possível utilizar a nova opção link_target aspirador.
O que é novo na versão 1.7:
- Faça forçando alvo de atributos externos no linke configurável através de um novo opção link_target nos produtos de limpeza. Só habilite esta opção para o CommentCleaner.
O que é novo na versão 1.6:.
- teste espaços em branco correto para envolver o texto nu bem
O que é novo na versão 1.4:.
- Pequenas limpeza de código
- Faixa principais quebras.
O que é novo na versão 1.3:
- Faixa de todos os elementos de nível superior br. Breaks são bons em elementos blocklevel, mas não deve ser usado para adicionar espaçamento vertical entre os elementos do bloco.
O que é novo na versão 1.2:.
- Corrigir um erro de digitação na documentação
- Faixa de quebras de arrasto.
Requisitos :
- Python
Comentários não encontrado