Warning: session_start(): Session cannot be started after headers have already been sent in /home/tvrreohg/public_html/manga.php on line 13
3 )2Y%@sxddlmZmZddlmZmZddlmZmZmZm Z ddlm Z ddl Z ye Wne k rleZ YnXdddd d d gZGd ddeZed deidZedjddd7DdeidZeddeidZedZd8ddZd9ddZddZdd Zd!d"Zd#d$Zd%d&Zd'd(Zd:d)d*Zd+d,Z Gd-d d e!Z"e"Z#ddd.e#fd/d Z$d0d Z%d1d2Z&d3d4Z'd5d6Z(dS);)XPath ElementBase) fromstringXHTML_NAMESPACE) _forms_xpath_options_xpath_nons_transform_result)defsN FormNotFound fill_formfill_form_html insert_errorsinsert_errors_htmlDefaultErrorCreatorc@seZdZdZdS)r z* Raised when no form can be found N)__name__ __module__ __qualname____doc__rr /usr/lib64/python3.6/formfill.pyr szKdescendant-or-self::form[name=$name]|descendant-or-self::x:form[name=$name]x)Z namespaces|cCsg|] }d|qS)zdescendant-or-self::r).0Z_tagrrr srinputselecttextareax:inputx:select x:textareaz-//label[@for=$for_id]|//x:label[@for=$for_id]z"descendant-or-self::*[@name=$name]cCst|||d}t||dS)N)form_id form_index) _find_form _fill_form)elvaluesr!r"rrrr scCs@t|}t|trt|}n tj|}t||||dt||S)N)r!r")type isinstance basestringrcopydeepcopyr r )htmlr&r!r" result_typedocrrrr &s    c Csi}t|dr|j}t|}x|D]}|jd}|s8q$t|rl|j|g}t|ttfs`|g}t||q$||krxq$q$|j|d}|d||<||}t|ttfry ||}Wqt k rw$YqXn |dkrq$t ||q$WdS)Nmixednamer) hasattrr/ _input_xpathget_takes_multipler(listtuple_fill_multiple IndexError _fill_single)r%r&ZcountsZinputsrr0valueindexrrrr$/s4         r$cCs<t|jdkr|jdrdS|jddj}|d kr8dSdS) NrZmultipleTr'radiocheckboxF)r>r?)rtagr4lower)rr'rrrr5Ms r5cCs|jddj}|dkrj|jd}|dkrZ|s4d}n|d}t|trN|dk}t||qt|||kn\|dkr|jd}t|||kn:x8t|D],}|jd}|dkr|j}t|||kqWdS) Nr'r=r?r;FrZonr>)r4rAr(r)_checkrZ text_content_select)rr;r'vresultZoptionrrrr8Vs&     r8cCs(|r|jddnd|jkr$|jd=dS)NZcheckedr=)setattrib)r%ZcheckrrrrBrs rBcCs(|r|jddnd|jkr$|jd=dS)NZselectedr=)rFrG)r%rrrrrCys rCcCs&t|jdkr||_n |jd|dS)Nrr;)rr@textrF)rr;rrrr:sr:c Cs|dkr0|dkr0t|}x|D]}|SWtd|dk r|j|}|dk rN|St||d}|rf|dStdtdjt|f|dk rt|}y||Stk rtd|t|fYnXdS)NzNo forms in page)r0rz-No form with the name or id of %r (forms: %s)z, z3There is no form with the index %r (%i forms found)) rr get_element_by_id_form_name_xpathidjoin_find_form_idsr9len)r%r!r"formsformrrrr#s0   r#ccst|}|sdVdSxtt|D]h\}}|jdrf|jdrXd|jd|jdfVq|jdVq |jdr~|jdVq d|Vq WdS)Nz (no forms)rKr0z%s or %sz(unnamed form %s))r enumerater4)r%rOr<rPrrrrMs    rMc@s4eZdZdZdZdZdZdZdZddZ dd Z d S) rTZdivz error-messagez error-blockZInvalidcKs<x6|jD]*\}}t||s(td|t|||q WdS)NzUnexpected keyword argument: %s)itemsr2 TypeErrorsetattr)selfkwr0r;rrr__init__s   zDefaultErrorCreator.__init__cCs|j|j}|jr |jd|j|rH|jrH|jd|jddd|j|dksX|dkr^|j}t|trt|j |n |p||j|_ |r|j r|j r|j |_ d|_ |jd|q|j |nD|j}|j|}|j r|j||n|j |_ d|_ |j|d|dS)Nclassr= rr1)Z makeelementerror_container_tagerror_message_classrFerror_block_classr4default_messager(rappendrH block_inside insert_beforetailinsertZ getparentr<)rUr%is_blockmessageerror_elparentposrrr__call__s.        zDefaultErrorCreator.__call__N) rrrr`r_rZr[r\r]rWrhrrrrrserrorc CsZt|||d}xF|jD]:\}}|dkr*qx&t|||D]\}} t|| ||q8WqWdS)N)r!r")r#rR_find_elements_for_name _insert_error) r%errorsr!r" error_class error_creatorr0rirerdrrrrs cKs>t|}t|trt|}n tj|}t||f|t||S)N)r'r(r)rr*r+rr )r,r&rVr-r.rrrrs    cCst|jtjkst|jdkr$d}nd}t|jdkrD|rDt|||jdr|t||jdd}|r|x|D]}t||qjW||||dS)NrFTrPrK)Zfor_id)rr@r Z empty_tags _add_classr4_label_for_xpath)r%rirmrnrcZlabelsZlabelrrrrks   rkcCs6|jdr&|jd|jdd|n |jd|dS)NrXrY)r4rF)r% class_namerrrros roccs|dkr||fVdS|jdrH|j|dd}|dk rD||fVdSt||d}|s\dSt|ttfs||d|fVdSx*t||D]\}}|dkrq||fVqWdS)N#r1)r0r) startswithrI _name_xpathr(r6r7zip)rPr0rir%Zelserrrrrrjs$    rj)rrrrrr )NN)NN)NN))Z lxml.etreerrZ lxml.htmlrrrrrr r r*r) NameErrorstr__all__ LookupErrorr rJrLr3rprtr r r$r5r8rBrCr:r#rMobjectrZdefault_error_creatorrrrkrorjrrrrsN        .