Не узнаете cout << в моей программе?

Решения с HTML-Parser являются обрывочными, если они запускаются только один раз:

html_to_text('<<b>script>alert("hacked")<</b>/script>

приводит к:

<script>alert("hacked")</script>

тому, что вы намерены предотвратить. если вы используете HTML-Parser, считайте теги до тех пор, пока не будут заменены ноль:

from HTMLParser import HTMLParser

class MLStripper(HTMLParser):
    def __init__(self):
        self.reset()
        self.fed = []
        self.containstags = False

    def handle_starttag(self, tag, attrs):
       self.containstags = True

    def handle_data(self, d):
        self.fed.append(d)

    def has_tags(self):
        return self.containstags

    def get_data(self):
        return ''.join(self.fed)

def strip_tags(html):
    must_filtered = True
    while ( must_filtered ):
        s = MLStripper()
        s.feed(html)
        html = s.get_data()
        must_filtered = s.has_tags()
    return html
0
задан user2313755 24 April 2013 в 03:20
поделиться