관리-도구
편집 파일: parser.cpython-312.pyc
� �Q�f�B � � � d Z ddlZddlZddlmZ dgZ ej d� Z ej d� Z ej d� Z ej d� Z ej d � Z ej d � Z ej d� Z ej d� Z ej d � Z ej dej � Z ej d � Z ej d� Z G d� dej( � Zy)zA parser for HTML and XHTML.� N)�unescape� HTMLParserz[&<]z &[a-zA-Z#]z%&([a-zA-Z][-.a-zA-Z0-9]*)[^a-zA-Z0-9]z)&#(?:[0-9]+|[xX][0-9a-fA-F]+)[^0-9a-fA-F]z <[a-zA-Z]�>z--\s*>z+([a-zA-Z][^\t\n\r\f />\x00]*)(?:\s|/(?!>))*z]((?<=[\'"\s/])[^\s/>][^\s/=>]*)(\s*=+\s*(\'[^\']*\'|"[^"]*"|(?![\'"])[^>\s]*))?(?:\s|/(?!>))*aF <[a-zA-Z][^\t\n\r\f />\x00]* # tag name (?:[\s/]* # optional whitespace before attribute name (?:(?<=['"\s/])[^\s/>][^\s/=>]* # attribute name (?:\s*=+\s* # value indicator (?:'[^']*' # LITA-enclosed value |"[^"]*" # LIT-enclosed value |(?!['"])[^>\s]* # bare value ) \s* # possibly followed by a space )?(?:\s|/(?!>))* )* )? \s* # trailing whitespace z#</\s*([a-zA-Z][-.a-zA-Z0-9:_]*)\s*>c � � � e Zd ZdZdZdd�� fd� Z� fd�Zd� Zd� Zd Z d � Z d� Zd� Zd � Z d� Zdd�Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Z� xZS )r aE Find tags and other markup and call handler functions. Usage: p = HTMLParser() p.feed(data) ... p.close() Start tags are handled by calling self.handle_starttag() or self.handle_startendtag(); end tags by self.handle_endtag(). The data between tags is passed from the parser to the derived class by calling self.handle_data() with the data as argument (the data may be split up in arbitrary chunks). If convert_charrefs is True the character references are converted automatically to the corresponding Unicode character (and self.handle_data() is no longer split in chunks), otherwise they are passed by calling self.handle_entityref() or self.handle_charref() with the string containing respectively the named or numeric reference as the argument. )�script�styleT)�convert_charrefsc �P �� t �| � � || _ | j � y)z�Initialize and reset this instance. If convert_charrefs is True (the default), all character references are automatically converted to the corresponding Unicode characters. N)�super�__init__r �reset)�selfr � __class__s ��2/opt/alt/python312/lib64/python3.12/html/parser.pyr zHTMLParser.__init__V s! �� � ���� 0���� � �� c �b �� d| _ d| _ t | _ d| _ t �| � � y)z1Reset this instance. Loses all unprocessed data.� z???N)�rawdata�lasttag�interesting_normal�interesting� cdata_elemr r )r r s �r r zHTMLParser.reset` s) �� �������-������ �� �r c �N � | j |z | _ | j d� y)z�Feed data to the parser. Call this as often as you want, with as little or as much text as you want (may include '\n'). r N)r �goahead�r �datas r �feedzHTMLParser.feedh s � � �|�|�d�*������Q�r c �&