import urllib import htmllib import formatter class DigiumPageParser(htmllib.HTMLParser): def __init__(self): htmllib.HTMLParser.__init__(self, formatter.NullFormatter(), 0) self.flag = False self.lines = {} self.lines_list = [] def start_a(self, attributes): if dict(attributes).get('class') == 'descriptiontext': self.flag = True def end_a(self): if self.flag: self.flag = False self.lines_list.append(self.lines[self.get_starttag_text()]) def handle_data(self, data): if self.flag: tag = self.get_starttag_text() if not self.lines.has_key(tag): self.lines[tag] = data else: self.lines[tag] += data if __name__ == '__main__': parser = DigiumPageParser() archivo = urllib.urlopen('http://www.voipsupply.com/index.php?ref=voip-supply&manufacturers_id=13') parser.feed(archivo.read()) for i in parser.lines_list: print i