�ɲɾ�����ӯ�����һ��ˣ��������С���˴��ͣ�������P���ҹ��ñ˽��ά�Բ��������˸߸ԣ�������ơ��ҹ��ñ�����ά�Բ���ˡ���˳^�ӣ������ӡ� ���ͯj�ӣ��ƺ���ӣ� ? PNG ?%k25u25%fgd5n!? PNG ?%k25u25%fgd5n!? PNG ?%k25u25%fgd5n!? PNG ?%k25u25%fgd5n!ó ‚Î\[c@sddgZyddlmZWn#ek rEZddlmZnXddlmZddlmZddl m Z ddl m Z m Z mZmZmZddlmZmZmZmZmZmZmZdd lmZd Zdefd „ƒYZdeefd „ƒYZd S(tLXMLTreeBuilderForXMLtLXMLTreeBuilderiÿÿÿÿ(tCallable(tBytesIO(tStringIO(tetree(tCommenttDoctypetNamespacedAttributetProcessingInstructiontXMLProcessingInstruction(tFASTtHTMLtHTMLTreeBuildert PERMISSIVEtParserRejectedMarkupt TreeBuildertXML(tEncodingDetectortlxmlcBsíeZejZeZeZdZ dgZ e e e e egZdZidd6Zd„Zd„Zddd„Zd„Zdddd„Zd „Zd „Zid „Zd „Zd „Zd„Zd„Zd„Zd„Z d„Z!RS(slxml-xmltxmlis$http://www.w3.org/XML/1998/namespacec Cs8|jdk r|jStjd|dtdtd|ƒS(Nttargett strip_cdatatrecovertencoding(t_default_parsertNoneRt XMLParsertFalsetTrue(tselfR((s5/usr/lib/python2.7/site-packages/bs4/builder/_lxml.pytdefault_parser5s cCs@|j|ƒ}t|tƒr<|d|dtd|ƒ}n|S(NRRR(Rt isinstanceRR(RRtparser((s5/usr/lib/python2.7/site-packages/bs4/builder/_lxml.pyt parser_for=scCsC||_|dk r't|ƒ|_nd|_|jg|_dS(N(RRtsettempty_element_tagstsouptDEFAULT_NSMAPStnsmaps(RR!R$((s5/usr/lib/python2.7/site-packages/bs4/builder/_lxml.pyt__init__Fs    cCs8|ddkr*t|djddƒƒSd|fSdS(Nit{it}(ttupletsplitR(Rttag((s5/usr/lib/python2.7/site-packages/bs4/builder/_lxml.pyt _getNsTagPsc csÁ|j }|rt|_n t|_t|tƒrH|d|tfVnt|tƒrt|jdƒd|tfVn||g}t ||||ƒ}x%|j D]}|j ||tfVqŸWdS(sÓ :yield: A series of 4-tuples. (markup, encoding, declared encoding, has undergone character replacement) Each 4-tuple represents a strategy for parsing the document. tutf8N( tis_xmlR tprocessing_instruction_classR R tunicodeRRtencodeRt encodingstmarkup( RR5tuser_specified_encodingtexclude_encodingstdocument_declared_encodingtis_htmlt try_encodingstdetectorR((s5/usr/lib/python2.7/site-packages/bs4/builder/_lxml.pytprepare_markupXs    cCst|tƒrt|ƒ}nt|tƒr<t|ƒ}n|j|jƒ}y‰|j|jj ƒ|_ |j j |ƒxMt |ƒdkrÈ|j|jƒ}t |ƒdkr||j j |ƒq|q|W|j j ƒWn1tttjfk r }tt|ƒƒ‚nXdS(Ni(R tbytesRR2Rtreadt CHUNK_SIZER"R%toriginal_encodingR!tfeedtlentclosetUnicodeDecodeErrort LookupErrorRt ParserErrorRtstr(RR5tdatate((s5/usr/lib/python2.7/site-packages/bs4/builder/_lxml.pyRA}scCs|jg|_dS(N(R&R'(R((s5/usr/lib/python2.7/site-packages/bs4/builder/_lxml.pyRC’sc Cs•t|ƒ}d}t|ƒdkrLt|jƒdkrL|jjdƒn†t|ƒdkrÒtd„|jƒDƒƒ}|jj|ƒ|jƒ}x9|jƒD](\}}td|dƒ}|||¡stxmlnsshttp://www.w3.org/2000/xmlns/( tdictRRBR'tappendtitemstcopyRR.t_prefix_for_namespaceR%thandle_starttag( Rtnametattrstnsmaptnsprefixtinverted_nsmaptprefixt namespacet attributet new_attrstattrRL((s5/usr/lib/python2.7/site-packages/bs4/builder/_lxml.pytstart•s0 '   cCsN|dkrdSx7t|jƒD]&}|dk r ||kr ||Sq WdS(s9Find the currently active prefix for the given namespace.N(RtreversedR'(RRZRX((s5/usr/lib/python2.7/site-packages/bs4/builder/_lxml.pyRR½s   cCsÃ|jjƒ|jjd}|j|ƒ\}}d}|dk r‡x@t|jƒD],}|dk rT||krT||}PqTqTWn|jj||ƒt|jƒdkr¿|jj ƒndS(Niÿÿÿÿi( R%tendDatattagStackR.RR_R't handle_endtagRBtpop(RRTt completed_tagRZRWRX((s5/usr/lib/python2.7/site-packages/bs4/builder/_lxml.pytendÆs    cCs<|jjƒ|jj|d|ƒ|jj|jƒdS(Nt (R%R`t handle_dataR1(RRRH((s5/usr/lib/python2.7/site-packages/bs4/builder/_lxml.pytpiÖs cCs|jj|ƒdS(N(R%Rg(Rtcontent((s5/usr/lib/python2.7/site-packages/bs4/builder/_lxml.pyRHÛscCs6|jjƒtj|||ƒ}|jj|ƒdS(N(R%R`Rtfor_name_and_idstobject_was_parsed(RRTtpubidtsystemtdoctype((s5/usr/lib/python2.7/site-packages/bs4/builder/_lxml.pyRnÞs cCs1|jjƒ|jj|ƒ|jjtƒdS(s#Handle comments as Comment objects.N(R%R`RgR(RRi((s5/usr/lib/python2.7/site-packages/bs4/builder/_lxml.pytcommentãs cCsd|S(sSee `TreeBuilder`.u) %s((Rtfragment((s5/usr/lib/python2.7/site-packages/bs4/builder/_lxml.pyttest_fragment_to_documentésN("t__name__t __module__RRtDEFAULT_PARSER_CLASSRR0R R1tNAMEtALTERNATE_NAMEStLXMLRR RtfeaturesR?R&RR"RR(R.R<RARCR^RRReRhRHRnRoRq(((s5/usr/lib/python2.7/site-packages/bs4/builder/_lxml.pyR#s2       #   (     cBsTeZeZdgZeeeeegZe Z e Z d„Z d„Zd„ZRS(s lxml-htmlcCstjS(N(Rt HTMLParser(RR((s5/usr/lib/python2.7/site-packages/bs4/builder/_lxml.pyR÷scCsw|jj}y3|j|ƒ|_|jj|ƒ|jjƒWn1tttj fk rr}t t |ƒƒ‚nXdS(N( R%R@R"R!RARCRDRERRFRRG(RR5RRI((s5/usr/lib/python2.7/site-packages/bs4/builder/_lxml.pyRAús cCsd|S(sSee `TreeBuilder`.u%s((RRp((s5/usr/lib/python2.7/site-packages/bs4/builder/_lxml.pyRqs(RrRsRwRuRvR R RRxRR0R R1RRARq(((s5/usr/lib/python2.7/site-packages/bs4/builder/_lxml.pyRîs   N(t__all__tcollections.abcRt ImportErrorRIt collectionstioRRRRt bs4.elementRRRR R t bs4.builderR R R RRRRt bs4.dammitRRwRR(((s5/usr/lib/python2.7/site-packages/bs4/builder/_lxml.pyts (4Ë