Re: scrubHTML [Pb lors de la réindexation des do cuments]
Yves Bastide <[email protected]>
| Newsgroups | gmane.comp.web.zope.cps.general.french |
|---|---|
| Message-ID | <[email protected]> |
Georges Racinet wrote:
> On Oct 18, 2006, at 5:04 PM, Yves Bastide wrote:
>
>> Je vais voir comment corriger mon scrubHTML : soit rajouter des « tags
>> autorisés » à VALID_TAGS, soit, si c'est possible, remplacer les tags
>> inconnus par des <span>...
>
> Ok, on reste à l'écoute
Ayé. En deux passes :
- boucle de recherche de balises ou attributs interdits (et réécrivant
l'éventuel <meta encoding>)
- transformation XSL supprimant les balises non agrées
Le résultat est comparable à celui de l'ancienne version, modulo des
différences de représentation de l'HTML
>
>>
>> Dépendance sur lxml 1.0 : mon patch s'en occupe déjà
>
> Parfait !
>
>>
>>>>
>>>> 2b. j'attache aussi un word_to_text.py utilisant wvware : le mettre
>>>> dans PortalTransforms/transforms, modifier transforms/__init__.py
>>>> pour qu'il l'appelle, et l'ajouter sous la ZMI
>>> On peut avoir ça aussi dans le ticket ? une source unique c'est plus
>>> simple.
>>
>> Oui... Dès que j'aurai fait écrit test... Et lxml 1.1 n'est encore ni
>> dans Debian, ni dans Ubuntu...
>
> Hmh pour le coup ce serait pour 3.4.4, sauf si ça teste la version de
> lxml et fait ce qu'il faut si c'est < 1.1
Ack. J'en ai une version qui utilise XSLT et marche avec lxml 1.0. Mais je
n'arrive toujours pas à exécuter des tests sous Zope 2.9 :-(
> Quel est l'ordre de grandeur du gain au fait ?
Une centaine (A64 3400+) :
$ time wvHtml lang/c#/SpecificationVer2.doc /tmp/cs.html
real 0m1.839s
user 0m1.224s
sys 0m0.080s
$ ls -l /tmp/cs.html
-rw-r--r-- 1 1000 1000 558717 2006-10-23 18:12 /tmp/cs.html
>>> timeit.Timer("import utils; s =
utils.lxmlScrubHTML(open('/tmp/cs.html').read())", 'gc.enable()').timeit(10)
2.4693601131439209
>>> timeit.Timer("import utils; s =
utils.sgmllibScrubHTML(open('/tmp/cs.html').read())", 'gc.enable()').timeit(10)
237.51163792610168
Et getBodyText() prend la moitié du temps de lxmlScrubHTML().
_______________________________________________
cps-users-fr
Adresse de la liste : [email protected]
Gestion de l'abonnement : <http://lists.nuxeo.com/mailman/listinfo/cps-users-fr>