Warning: session_start(): Session cannot be started after headers have already been sent in /home/tvrreohg/public_html/manga.php on line 13
3 6]}%@sddgZyddlmZWn.ek rFZzddlmZWYddZ[XnXddlmZddlmZddl m Z ddl m Z m Z mZmZmZdd lmZmZmZmZmZmZmZdd lmZd ZGd ddeZGd ddeeZdS)LXMLTreeBuilderForXMLLXMLTreeBuilder)CallableN)BytesIO)StringIO)etree)CommentDoctypeNamespacedAttributeProcessingInstructionXMLProcessingInstruction)FASTHTMLHTMLTreeBuilder PERMISSIVEParserRejectedMarkup TreeBuilderXML)EncodingDetectorlxmlc@seZdZejZdZeZdZ dgZ e e e e egZdZddiZddZdd Zd%d d Zd dZd&ddZddZddZifddZddZddZddZddZdd Zd!d"Zd#d$Z d S)'rTzlxml-xmlZxmliz$http://www.w3.org/XML/1998/namespacecCs"|jdk r|jStj|dd|dS)NFT)target strip_cdataZrecoverencoding)_default_parserr XMLParser)selfrr/usr/lib/python3.6/_lxml.pydefault_parser5s z$LXMLTreeBuilderForXML.default_parsercCs&|j|}t|tr"||d|d}|S)NF)rrr)r isinstancer)rrparserrrr parser_for=s  z LXMLTreeBuilderForXML.parser_forNcCs,||_|dk rt||_d|_|jg|_dS)N)rsetempty_element_tagssoupDEFAULT_NSMAPSnsmaps)rr r#rrr__init__Fs  zLXMLTreeBuilderForXML.__init__cCs0|ddkr$t|ddjddSd|fSdS)Nr{})tuplesplit)rtagrrr _getNsTagPs zLXMLTreeBuilderForXML._getNsTagc cs|j }|rt|_nt|_t|tr2|d|dfVt|trP|jdd|dfV||g}t||||}x|jD]}|j ||dfVqnWdS)z :yield: A series of 4-tuples. (markup, encoding, declared encoding, has undergone character replacement) Each 4-tuple represents a strategy for parsing the document. NFutf8) is_xmlr processing_instruction_classr rstrencoderZ encodingsmarkup) rr4Zuser_specified_encodingZexclude_encodingsZdocument_declared_encodingZis_htmlZ try_encodingsZdetectorrrrrprepare_markupXs      z$LXMLTreeBuilderForXML.prepare_markupcCst|trt|}nt|tr&t|}|j|j}y`|j|jj |_ |j j |x4t |dkr|j|j}t |dkrR|j j |qRW|j j Wn6tttjfk r}ztt|WYdd}~XnXdS)Nr)rbytesrr2rread CHUNK_SIZEr!r$original_encodingr feedlencloseUnicodeDecodeError LookupErrorr ParserErrorr)rr4dataerrrr:}s       zLXMLTreeBuilderForXML.feedcCs|jg|_dS)N)r%r&)rrrrr<szLXMLTreeBuilderForXML.closec Cs*t|}d}t|dkr4t|jdkr4|jjdnht|dkrtddt|jD}|jj||j}x,t|jD]\}}td|d}|||<q|Wi} xVt|jD]F\} } |j| \}} |dkr| | | <q|j |}t|| |} | | | <qW| }|j|\}}|j |}|j j ||||dS)Nrr)css|]\}}||fVqdS)Nr).0keyvaluerrr sz.LXMLTreeBuilderForXML.start..Zxmlnszhttp://www.w3.org/2000/xmlns/) dictr;r&appendlistitemscopyr r._prefix_for_namespacer$Zhandle_starttag) rnameZattrsZnsmapnsprefixinverted_nsmapprefix namespaceZ attributeZ new_attrsattrrDrrrstarts0         zLXMLTreeBuilderForXML.startcCs<|dkr dSx*t|jD]}|dk r||kr||SqWdS)z9Find the currently active prefix for the given namespace.N)reversedr&)rrPrNrrrrKs  z+LXMLTreeBuilderForXML._prefix_for_namespacecCs|jj|jjd}|j|\}}d}|dk r^x,t|jD]}|dk r<||kr<||}Pq %sr)rfragmentrrrtest_fragment_to_documentsz/LXMLTreeBuilderForXML.test_fragment_to_document)NN)NNN)!__name__ __module__ __qualname__rrZDEFAULT_PARSER_CLASSr0r r1NAMEALTERNATE_NAMESLXMLrr rfeaturesr8r%rr!r'r.r5r:r<rRrKrWrZr@r]r^r`rrrrr#s2  # ( c@sFeZdZeZdgZeeeeegZ dZ e Z ddZ ddZddZd S) rz lxml-htmlFcCstjS)N)rZ HTMLParser)rrrrrrszLXMLTreeBuilder.default_parsercCsj|jj}y&|j||_|jj||jjWn6tttj fk rd}zt t |WYdd}~XnXdS)N) r$r9r!r r:r<r=r>rr?rr2)rr4rrArrrr:s  zLXMLTreeBuilder.feedcCsd|S)zSee `TreeBuilder`.z%sr)rr_rrrr`sz)LXMLTreeBuilder.test_fragment_to_documentN)rarbrcrfrdrerr rrgr0r r1rr:r`rrrrrs )__all__collections.abcr ImportErrorrA collectionsiorrrrZ bs4.elementrr r r r Z bs4.builderr rrrrrrZ bs4.dammitrrfrrrrrrs   $ L