Sida 1 av 1

Universal Feed Parser och HTML-taggar

Postat: 29 aug 2009, 19:28
av ubot
Jag håller på och trixar lite med python-programmet Universal Feed Parser. Problemet är att jag vill att Feed Parser ska ta bort fler HTML-taggar än det gör från scratch. Det är så att när Feed Parser parsar ett atom feed så plockar det bort HTML-taggar som kan innehålla farlig kod. Jag vill gå ett steg längre och få Feed Parser att ta bort tex img, td, p-taggar mm. I feedparser.py finns det ett stycke där det finns uppräknat vilka taggar (elements) som Feed Parser ska hoppa över, resten filtreras bort i atom feed:et.

Problemet är att när jag tar bort img, td, p mm från listan på allowed elements så händer inget i mitt parsade feed. Varför anpassar sig inte Universal Feed Parser till dom ändringar som jag har gjort i feedparser.py? Det hade varit snällt om någon som förstår sig på python-kod bättre än mig hade tittat på feedparser.py och svarat på varför min modifiering av koden inte fungerar?

Här är källkoden till feedparser.py: http://ocw.mit.edu/NR/rdonlyres/Electri ... dparser.py

Och avsnittet där jag har ändrat i vilka taggar som tillåts heter: class _HTMLSanitizer(_BaseHTMLProcessor):

Vad säger ni programmerare? Varför "strippar" inte Universal Feed Parser bort img, p, td-taggar mfl när jag tar bort "elementen" från listan på tillåtna HTML-element?

Edit:

Det kan vara så att jag ändrade i fel feedparser.py fil. Det verkar lite som om jag har feedparser.py i två olika kataloger. Nu har jag gjort samma modifikation i den andra feedparser.py filen. Det återstår att se om det fungerar bättre nu. Testning pågår... Mjo, det var nog fel fil jag ändrade i. Nu ser det ut att fungera.