
    AHj-                     
   d Z ddlZddlZddlZddlmZ ddlmZ ddlm	Z	 ddl
mZ ddlmZmZ d	eez  dz  d
ej                   dedz  fdZd
ee   dej                   fdZd
ej                   ddfdZddZedk(  r e        yy)z.
Implementing a basic command-line interface.
    N)python_version)HtmlElement   )__version__)	find_date)	fetch_urlis_wrong_document
htmlstringargsreturnc                     | t        |       r t        j                  j                  d       yt	        | |j
                   |j                  |j                  |j                  |j                        S )zGeneric safeguards and triggersNz(# ERROR: document is empty or too large
)extensive_searchoriginal_dateverbosemin_datemax_date)
r	   sysstderrwriter   fastoriginalr   mindatemaxdate)r
   r   s     D/root/tools/cai/cai_env/lib/python3.12/site-packages/htmldate/cli.pycli_examiner      s]     .z:

DE!YYmm     c           
         t        j                         }|j                  dddd       |j                  dddt        	       |j                  d
dd       |j                  dddt        	       |j                  dddt        	       |j                  dddt        	       |j                  dddd       |j                  ddddt         dt                       |j                  |       S )z(Define parser for command-line argumentsz-fz--fastz#fast mode: disable extensive searchstore_false)helpactionz-iz--inputfilezXname of input file for batch processing
                            (similar to wget -i))r   typez
--originalzoriginal date prioritized
store_truez-minz	--mindatez'earliest acceptable date (ISO 8601 YMD)z-maxz	--maxdatez%latest acceptable date (ISO 8601 YMD)z-uz--URLzcustom URL downloadz-vz	--verbosezincrease output verbosityz	--versionz!show version information and exitversionz	Htmldate z
 - Python )r   r    r#   )argparseArgumentParseradd_argumentstrr   r   
parse_args)r   
argsparsers     r   r(   r(   %   s)   ((*JhB=   4   6|   "KRU   "IPS   D'0ECPk ;L   0K=
>3C2DE	     &&r   c                 ,   | j                   r$t        j                  t        j                         | j                  s| j
                  r;t        | j
                        }|Ct        j                  d| j
                   d       n	 t        j                  j                         }t        |       }|#t        j                  j                  |dz          yyt        | j                  dd      5 }|D ]^  }t        |j!                               }t        ||       }t        j                  j                  |j!                          d	|xs d
 d       ` 	 ddd       y# t        $ r#}t        j                  d| d       Y d}~d}~ww xY w# 1 sw Y   yxY w)z1Process the arguments passed on the command-line.)levelNzNo data for URL: 
zWrong buffer encoding: rzutf-8)modeencoding	None)r   loggingbasicConfigDEBUG	inputfileURLr   r   exitstdinreadUnicodeDecodeErrorr   stdoutr   openstrip)r   r
   errresultr5   linehtmltexts          r   process_argsrB   H   sU    ||'--0 >>88"488,J!,TXXJb9:< YY^^-
 Z.JJVd]+ 
 $..sW= 	J! J$TZZ\2$Xt4

  DJJL>F4Df3ER!HIJ	J 	J & <23%r:;;<	J 	Js%   E -A$F
	F$FF
Fc                  R    t        t        j                  dd       } t        |        y)zRun as a command-line utility.r   N)r(   r   argvrB   )r   s    r   mainrE   h   s      chhqrl#Dr   __main__)r   N)__doc__r$   r2   r   platformr   	lxml.htmlr    r   corer   utilsr   r	   r'   	Namespacer   listr(   rB   rE   __name__ r   r   <module>rQ      s      
 # !   /k!D(


 	4Z& 'T#Y  '8#5#5  'FJx)) Jd J@ zF r   