Je cherche un C/C++ fonctionnel équivalent à HTML :: Defang, et mon Google-fu n'a pas été capable de découvrir quoi que ce soit. Je veux garder toutes les étiquettes bénignes et dépouiller/defang tout le reste. En l'absence d'une bibliothèque réelle, tous les pointeurs pour compléter les listes de balises/attributs/etc à defang seraient appréciés. Je connais http://en.wikipedia.org/wiki/DOM_Events. Merci.Meilleur bibliothèque C/C++ pour defang HTML?
Répondre
En Java, j'utilise JTidy pour nettoyer le HTML. Je ne suis pas sûr que cela convienne à vos besoins, mais si vous utilisez Google pour JTidy, vous pouvez également suivre le lien vers une implémentation C/C++, et voir si cela fonctionne comme vous le souhaitez. En ce qui concerne les éléments à déformer: Regardez les spécifications du W3C pour le code HTML; Tout tag qui n'y figure pas n'appartient pas au HTML. Mais encore une fois, je pourrais mal comprendre votre concept de "defang".
Fondamentalement, ce que je veux, c'est ce que font les systèmes de messagerie Web lorsqu'ils sont présentés avec un courriel HTML. Montrez ce qu'ils peuvent, armez le reste, y compris les attaques. –
C'est plus un art qu'une science. Je pense que tu ferais bien de laisser Tidy enlever tous les scripts. Mais je ne peux pas évaluer Tidy pour vous. Essayez-le! –
libxml2 est gratuit et devrait faire ce que vous voulez.
Voir cette partie de l'API: http://www.xmlsoft.org/html/libxml-HTMLparser.html
La fonction htmlReadFile()
pourrait faire l'affaire.
Pour vous aider à démarrer avec libxml2 quelques exemples peuvent être trouvés ici:
Dans ce contexte, ce qui est HTML :: Defang? –