o
    h	                     @   s~   d dl Z d dlmZmZmZmZmZmZmZ de	de	fddZ
de	fddZde	fd	d
Zdd Zdd Zdd Zdd ZdS )    N)COUNTRY_TOP_LEVEL_DOMAINSDOMAIN_TO_LANGUAGESDOMAIN_TO_SEARCH_ENGINESENCODING_VALUESGENERIC_TOP_LEVEL_DOMAINSMAXIMUM_ENCODING_VALUE_LENGTHMINIMAL_ENCODING_VALUE_LENGTHdomain_codereturnc                 C   s2   | t  v rtt |  S tt}tt | S N)r   keysrandomchoicer   )r	   random_generic_domain r   R/var/www/Befach/backend/venv/lib/python3.10/site-packages/fake_http_header/util.py_generate_referer_site   s   
r   c                  C   s2   t jtt ttd} t| }ddd |D S )Nk,c                 S   s   g | ]}t |qS r   )str).0encoding_valuer   r   r   
<listcomp>   s    z-_generate_accept_encoding.<locals>.<listcomp>)r   choicesr   randintr   r   setjoin)encoding_values_arrayencoding_values_array_uniquer   r   r   _generate_accept_encoding   s   
r    c                 C   s*   | t v rt| }t| |}t||S t S r   )r   _get_primary_language_get_additional_languages_combine_languages_handle_unknown_domain)r	   primary_languageadditional_languagesr   r   r   _generate_accept_language   s
   

r'   c                 C   s   t t|  S r   )r   r   r   )r	   r   r   r   r!   (   s   r!   c              	      sP    fddt |  D }|sg S dd ttj|tdt|dg dD }|S )Nc                    s   g | ]}| kr|qS r   r   )r   langr%   r   r   r   -   s    z-_get_additional_languages.<locals>.<listcomp>c                 S   s    g | ]\}}| d |dqS )z;q=z.1fr   )r   r(   qr   r   r   r   0   s       r   )g?g?gffffff?)r   zipr   sampler   len)r	   r%   available_languagesr&   r   r)   r   r"   ,   s   r"   c                 C   s.   t   dk r|r|  dd| d S |  S )Ng      ?r   ,*;q=0.5)r   r   )r%   r&   r   r   r   r#   9   s   r#   c                  C   s"   t t} t t|  }| dS )Nr0   )r   r   r   r   )random_domainr%   r   r   r   r$   @   s   

r$   )r   fake_http_header.constantsr   r   r   r   r   r   r   r   r   r    r'   r!   r"   r#   r$   r   r   r   r   <module>   s    $		