fork download
  1. from html.parser import HTMLParser
  2.  
  3. class DanParser(HTMLParser):
  4. def __init__(self):
  5. super().__init__()
  6. self.in_select = False
  7.  
  8. def handle_starttag(self, tag, attrs):
  9. print("Start Tag: ", tag, attrs)
  10. if tag == "select":
  11. self.in_select = True
  12. print("Start Tag: ", tag, attrs)
  13.  
  14. def handle_endtag(self, tag):
  15. print("EndTag: ", tag)
  16. if tag == "select" and self.in_select:
  17. self.in_select = False
  18. print("EndTag: ", tag)
  19.  
  20. def handle_data(self, data):
  21. print("Data: ", data)
  22. if self.in_select:
  23. print("Data: ", data)
  24.  
  25. def handle_startendtag(self,tag,attrs):
  26. print("StarEnd Tag: ", tag, attrs)
  27.  
  28. t = DanParser()
  29. t.feed("<select>test</select>")
  30.  
Success #stdin #stdout 0.03s 5908KB
stdin
Standard input is empty
stdout
Start Tag:  select []
Start Tag:  select []
Data:  test
Data:  test
EndTag:  select
EndTag:  select