HackerRank Detect HTML Tags, Attributes and Attribute values solution in Python YASH PAL, 31 July 202417 January 2026 HackerRank Detect HTML Tags, Attributes and Attribute values solution in python – In this Detect HTML, Tags Attributes and Attributes values problem in python programming. You are given an HTML code snippet of N lines. Your task is to detect and print all the HTML tags, attributes and attribute values.Print the detected items in the following format:Tag1 Tag2 -> Attribute2[0] > Attribute_value2[0] -> Attribute2[1] > Attribute_value2[1] -> Attribute2[2] > Attribute_value2[2] Tag3 -> Attribute3[0] > Attribute_value3[0] The -> symbol indicates that the tag contains an attribute. It is immediately followed by the name of the attribute and the attribute value.The > symbol acts as a separator of attributes and attribute values.If an HTML tag has no attribute then simply print the name of the tag.Note: Do not detect any HTML tag, attribute or attribute value inside the HTML comment tags (<!-- Comments -->). Comments can be multiline.All attributes have an attribute value.Input FormatThe first line contains an integer N, the number of lines in the HTML code snippet. The next N lines contain HTML code.HackerRank Detect HTML Tags, Attributes and Attribute values problem solution in Python 2.import re num_lines = input() lines = [raw_input() for i in xrange(num_lines)] text = ' '.join(lines) text = re.sub(r'<!--.*?-->', '', text, flags=re.DOTALL) from HTMLParser import HTMLParser class Parser(HTMLParser): def handle_starttag(self, tag, attrs): print tag for name, val in attrs: print '->', name, '>', val Parser().feed(text)Problem solution in Python 3 programming.# Enter your code here. Read input from STDIN. Print output to STDOUT from html.parser import HTMLParser class MyHTMLParser(HTMLParser): def handle_starttag(self, tag, attrs): print(tag) [print('-> {} > {}'.format(*attr)) for attr in attrs]html = ‘n’.join([input() for _ in range(int(input()))]) parser = MyHTMLParser() parser.feed(html) parser.close()Problem solution in pypy programming.# Enter your code here. Read input from STDIN. Print output to STDOUT from HTMLParser import HTMLParser class parseHTML(HTMLParser): def handle_starttag(self, tag, attrs): print tag for attr in attrs: print "->", attr[0], ">", attr[1] parser = parseHTML() for _ in xrange(input()): parser.feed(raw_input())Problem solution in pypy3 programming.# Enter your code here. Read input from STDIN. Print output to STDOUTfrom html.parser import HTMLParserclass MyHTMLParser(HTMLParser): def handle_starttag(self,tag, attrs): print(tag) for i in attrs: print("->",i[0],">",i[1]) def handle_startendtag(self,tag, attrs): print(tag) for i in attrs: print("->",i[0],">",i[1])N=int(input())tmp=""for _ in range(N): tmp=tmp+input()+"n" psr=MyHTMLParser()psr.feed(tmp) coding problems solutions Hackerrank Problems Solutions Python Solutions HackerRankPython