htmllaundry paketet innehåller flera praktiska Python metoder att rensa HTML-kod eller utföra andra vanliga förändringar. & Nbsp; Den sanering är tillräckligt stränga för att kunna rengöra HTML klistras in från MS Word eller Apple Pages. Det här paketet innehåller också integration kod för z3c.form att tillhandahålla fält som automatiskt sanera HTML på spara.
Genomförandet bygger på Cleaner klass, från lxml.
Cleanup rutiner
Alla sanering rutiner kan åberopas genom den enda desinficeringsfunktion. Denna funktion tar ett indatasträngen som indata och kommer tillbaka en saneras version av den strängen. Här är ett enkelt exempel:
>>> Från htmllaundry import sanitize
>>> Desinficerings ("Hej, världen )
"
Hej, världen
"Den desinficerings metoden tar en extra valfri parameter med en lxml Cleaner exempel som kan användas för att använda olika filtreringsregler. htmllaundry innefattar tre rengöringsmedel:
& Nbsp; * htmllaundry.cleaners.DocumentCleaner, vilket är standard renare. Detta renare gör mest säkra taggar, medan strippa ut inline stilar och osäkra uppmärkning.
& Nbsp; * htmllaundry.cleaners.LineCleaner är en mer strikt renare som endast tillåter några inline-element. Detta är användbart på platser där du bara vill acceptera en enda linjeingång, till exempel i dokumenttitlar.
& Nbsp; * htmllaundry.cleaners.CommentCleaner tillåter endast en mycket begränsad uppsättning HTML-element, och är utformad för att vara användbar för användare lämnade synpunkter.
Om du vill gå hela vägen kan du också använda StripMarkup att strippa alla uppmärkning från din ingång:
>>> Från htmllaundry import StripMarkup
>>> StripMarkup ("Hej, världen )
'Hej världen'
z3c.form integration
Om du vill använda z3c.form integration bör du använda z3cform extra för detta paket:
install_requires = [
& Nbsp; ....
& Nbsp; htmllaundry [z3cform]
& Nbsp; ...
& Nbsp;]
Dessutom måste du ladda ZCML. I din configure.zcml lägga till en rad som denna:
Du kan sedan använda htmltext fälttyp i dina scheman. Till exempel:
från zope.interface import Gränssnitt
från zope import schemat
från htmllaundry.z3cform importhtmltext
klass IDocument (Interface):
& Nbsp; title = schema.TextLine (
& Nbsp; title = _ (u "Title"),
& Nbsp; krävs = sant)
& Nbsp; description = htmltext (
& Nbsp; title = _ (u "Beskrivning"),
& Nbsp; krävs = sant)
Observera att användning av htmltext inte automatiskt kommer att ge dig en WYSYWIG widget
Vad är nytt i den här versionen.
- Lägg till alternativ att sanera att ange en annan wrap element eller hoppa omslag helt.
Vad är nytt i version 1.9:
- Lägg MANIFEST.in till Underlätta utsläpp som inte tillverkats av omstörtande verksamhet.
- fixa alla städare att strippa javascript. Detta fixar fråga 1.
Vad är nytt i version 1.8:
- Ta bort länk mål verkställighet från hårdkodade kod väg från desinficerings. Detta gör det möjligt att använda den nya link_target renare alternativ.
Vad är nytt i version 1.7:
- Gör forcering av målet attribut på externa Linke konfigureras via en ny link_target alternativ i städare. Bara aktivera detta alternativ för CommentCleaner.
Vad är nytt i version 1.6.
- Korrekt mellanslag test för inslagning nakna text samt
Vad är nytt i version 1.4.
- liten kod sanering
- Strip ledande raster.
Vad är nytt i version 1.3:
- Strip alla toppnivå br element. Avbrott är bra i blocklevel element, men bör inte användas för att lägga till vertikala avståndet mellan blockelement.
Vad är nytt i version 1.2.
- Fix ett stavfel i dokumentationen
- Strip avslutande raster.
Krav :
- Python
Kommentarer hittades inte