
    !}g                     b    d Z ddlZddlZddlZddl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ZdS )	ztldextract CLI.    N   )version)
TLDExtractreturnc            	      ~  	 t          j                     t          j        dd          } |                     dddt
          z              |                     dd	d
dd           |                     ddt          dd           |                     ddd
dd           |                     ddd
d           |                     ddd           |                     ddd d
dd!           |                     d"d#d$d%d&'           |                                 }|j        |j	        d(}|j
        r
|j
        |d)<   |j        g }|j        D ]}t          j                            |          rYt          j        t          j                            |                                                    }|                    |           z|                    |           ||d+<   t)          d0i |}|j        r|                    d#           n/|j        s(|                                  t1          j        d,           |j        D ]} ||          	|j        rFd-}t7          t5          j        i t;          j        	          	fd.|D                                  Zt7          	j         d/	j          d/	j!                    d*S )1zTldextract CLI main command.
tldextractz!Parse hostname from a url or fqdn)progdescriptionz	--versionr   z	%(prog)s )actionr   z-jz--jsonF
store_truezoutput in json format)defaultr   helpinputzfqdn|url*zfqdn or url)metavartypenargsr   z-uz--updatez&force fetch the latest TLD definitionsz--suffix_list_urlappendz6use an alternate URL or local file for TLD definitions)r   requiredr   z-cz--cache_dirz.use an alternate TLD definition caching folder)r   z-pz--include_psl_private_domainsz--private_domainszInclude private domainsz--no_fallback_to_snapshotTstore_falsefallback_to_snapshotz<Don't fall back to the package's snapshot of the suffix list)r   r   destr   )include_psl_private_domainsr   	cache_dirNsuffix_list_urlsr   )fqdnipv4ipv6registered_domainc                 2    i | ]}|t          |          S  )getattr).0propexts     N/var/www/py-google-trends/myenv/lib/python3.11/site-packages/tldextract/cli.py
<dictcomp>zmain.<locals>.<dictcomp>j   s%    KKK4d!3!3KKK     r!   )"loggingbasicConfigargparseArgumentParseradd_argument__version__str
parse_argsr   r   r   suffix_list_urlospathisfilepathlibPathabspathas_urir   r   updater   print_usagesysexitjsonprintdumpsdataclassesasdict	subdomaindomainsuffix)
parserargs
obj_kwargsr   sourceas_path_uritld_extracti
propertiesr%   s
            @r&   mainrN      s   $'J  F I{[/H     $     #S}     5     E	     m"R     '&     ##K     D (,'G $ 9 J
 ~ 1"&.
;'* 	0 	0Fw~~f%% 0%l27??6+B+BCCJJLL ''4444 ''////)9
%&**z**K{ 4    Z Z @ @k!nn9 	@FJ
%,S11KKKK
KKK     S]>>SZ>>#*>>????@ @r(   )r   N)__doc__r,   rA   r>   r*   os.pathr3   r6   r<   _versionr   r/   r   r   rN   r!   r(   r&   <module>rR      s               



 , , , , , , " " " " " "`@ `@ `@ `@ `@ `@r(   