File "parser.cpython-39.opt-1.pyc"

Full Path: /home/attunedd/public_html/byp/izo/con7ext_sym404/rintoar.txt/opt/alt/python39/lib64/python3.9/html/__pycache__/parser.cpython-39.opt-1.pyc
File size: 10.23 KB
MIME-type: text/x-bytecode.python
Charset: 8 bit

a

XC?hC@sdZddlZddlZddlmZdgZedZedZedZ	edZ
ed	Zed
ZedZ
edZed
ZedejZed
ZedZGdddejZdS)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@seZdZdZdZddddZddZd	d
ZddZd
Z	ddZ
ddZddZddZ
ddZd7ddZddZddZdd Zd!d"Zd#d$Zd%d&Zd'd(Zd)d*Zd+d,Zd-d.Zd/d0Zd1d2Zd3d4Zd5d6Zd
S)8raEFind 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.
    )ZscriptZstyleT)convert_charrefscCs||_|dS)zInitialize and reset this instance.

        If convert_charrefs is True (the default), all character references
        are automatically converted to the corresponding Unicode characters.
        N)rreset)selfrr0/opt/alt/python39/lib64/python3.9/html/parser.py__init__VszHTMLParser.__init__cCs(d|_d|_t|_d|_tj|dS)z1Reset this instance.  Loses all unprocessed data.z???N)rawdatalasttaginteresting_normalinteresting
cdata_elem_markupbase
ParserBaserrrrr	r_s
zHTMLParser.resetcCs|j||_|ddS)zFeed data to the parser.

        Call this as often as you want, with as little or as much text
        as you want (may include '\n').
        rN)rgoaheadrdatarrr	feedgszHTMLParser.feedcCs|ddS)zHandle any buffered data.N)rrrrr	closepszHTMLParser.closeNcCs|jS)z)Return full source of start tag: '<...>'.)_HTMLParser__starttag_textrrrr	get_starttag_textvszHTMLParser.get_starttag_textcCs$||_td|jtj|_dS)Nz</\s*%s\s*>)lowerrrecompileIr)relemrrr	set_cdata_modezs
zHTMLParser.set_cdata_modecCst|_d|_dSN)rrrrrrr	clear_cdata_mode~szHTMLParser.clear_cdata_modecCsJ|j}d}t|}||kr|jrv|jsv|d|}|dkr|dt||d}|dkrptd	||spq|}n*|j
	||}|r|}n|jrq|}||kr|jr|js|t
|||n|||||||}||krq|j}|d|rJt||r"||}	n|d|r:||}	nn|d|rR||}	nV|d|rj||}	n>|d	|r||}	n&|d
|kr|d|d
}	nq|	dkr<|sq|d|d
}	|	dkr|d|d
}	|	dkr|d
}	n|	d
7}	|jr*|js*|t
|||	n||||	|||	}q|d|rt||}|r|d
d}
||
|}	|d|	d
s|	d
}	|||	}qn<d||dvr||||d
|||d
}qq|d|rt||}|rN|d
}
||
|}	|d|	d
s@|	d
}	|||	}qt||}|r|r|||dkr|}	|	|kr|}	|||d
}qn.|d
|kr|d|||d
}nqqq|r8||kr8|js8|jr|js|t
|||n|||||||}||d|_dS)Nr<&"z[\s;]z</<!--z<?z<!rrz&#;)rlenrrfindrfindmaxrrsearchrstarthandle_datarZ	updatepos
startswithstarttagopenmatchparse_starttagparse_endtag
parse_commentparse_piparse_html_declarationcharrefgrouphandle_charrefend	entityrefhandle_entityref
incomplete)rr=rinjZampposr4r2knamerrr	rs













zHTMLParser.goaheadcCs|j}|||ddkr$||S|||ddkrB||S|||ddkr|d|d}|dkrvdS|||d	||d
S||SdS)Nr'z<![	z	<!doctyperr)r(r)rr7Zparse_marked_sectionrr,handle_declparse_bogus_comment)rrArgtposrrr	r9s

z!HTMLParser.parse_html_declarationrcCsD|j}|d|d}|dkr"dS|r<|||d||dS)Nrr(r)r)rr,handle_comment)rrAZreportrposrrr	rJszHTMLParser.parse_bogus_commentcCsH|j}t||d}|sdS|}|||d||}|S)Nr(r))rpicloser/r0	handle_pir=)rrArr4rCrrr	r8 szHTMLParser.parse_picCsd|_||}|dkr|S|j}||||_g}t||d}|}|d|_}||kr t	||}|s~q |ddd\}	}
}|
sd}nZ|dddkr|ddksn|dddkr|ddkrnn|dd}|rt
|}||	|f|}q`|||}|dvr|
\}
}d	|jvrz|
|jd	}
t|j|jd	}n|t|j}|||||S|d
r|||n"|||||jvr|||S)Nrrr(rG'r)")r/>
rR)rcheck_for_whole_start_tagrtagfind_tolerantr4r=r;rr
attrfind_tolerantrappendstripZgetposcountr+r-r1endswithhandle_startendtaghandle_starttagCDATA_CONTENT_ELEMENTSr!)rrAendposrattrsr4rDtagmattrnamerestZ	attrvaluer=linenooffsetrrr	r5,sX

&





zHTMLParser.parse_starttagcCs|j}t||}|r|}|||d}|dkr>|dS|dkr~|d|rZ|dS|d|rjdS||krv|S|dS|dkrdS|dvrdS||kr|S|dStd	dS)
Nrr/rRr(r)rz6abcdefghijklmnopqrstuvwxyz=/ABCDEFGHIJKLMNOPQRSTUVWXYZzwe should not get here!)rlocatestarttagend_tolerantr4r=r2AssertionError)rrArrarCnextrrr	rT_s.z$HTMLParser.check_for_whole_start_tagcCs|j}t||d}|sdS|}t||}|s|jdurV|||||St||d}|s|||ddkr|dS|	|S|
d}|d|}|
||dS|
d}|jdur||jkr|||||S|
|||S)Nrr)r(rGz</>r)r	endendtagr/r=
endtagfindr4rr1rUrJr;rr,
handle_endtagr#)rrArr4rKZ	namematchZtagnamer rrr	r6s6





zHTMLParser.parse_endtagcCs|||||dSr")r\rlrr`r_rrr	r[szHTMLParser.handle_startendtagcCsdSr"rrmrrr	r\szHTMLParser.handle_starttagcCsdSr"r)rr`rrr	rlszHTMLParser.handle_endtagcCsdSr"rrrErrr	r<szHTMLParser.handle_charrefcCsdSr"rrnrrr	r?szHTMLParser.handle_entityrefcCsdSr"rrrrr	r1szHTMLParser.handle_datacCsdSr"rrrrr	rLszHTMLParser.handle_commentcCsdSr"r)rZdeclrrr	rIszHTMLParser.handle_declcCsdSr"rrrrr	rOszHTMLParser.handle_picCsdSr"rrrrr	unknown_declszHTMLParser.unknown_decl)r)__name__
__module____qualname____doc__r]r
rrrrrr!r#rr9rJr8r5rTr6r[r\rlr<r?r1rLrIrOrorrrr	r>s6		z
3"()rsrrZhtmlr__all__rrr@r>r:r3rNZcommentcloserUrVVERBOSErgrjrkrrrrrr	<module>s*