§
    û�ÄjÕ  ã                   ó‚   — d Z dZddlZddlmZmZ ddlZddlmZ ddl	m
Z
mZ ddlmZ ddlmZmZ  G d	„ d
e¦  «        ZdS )z
papago translator API
z"Copyright (C) 2020 Nidhal Baccourié    N)ÚListÚOptional)ÚBaseTranslator)Ú	BASE_URLSÚPAPAGO_LANGUAGE_TO_CODE)ÚTranslationNotFound)Úis_input_validÚrequest_failedc            	       óž   ‡ — e Zd ZdZ	 	 	 	 ddee         dee         dedefˆ fd	„Zd
edefd„Zdedefd„Zde	e         de	e         fd„Z
ˆ xZS )ÚPapagoTranslatorzd
    class that wraps functions, which use google translate under the hood to translate text(s)
    NÚautoÚenÚ	client_idÚ
secret_keyÚsourceÚtargetc                 ó´   •— |r|st          d¦  «        ‚|| _        || _         t          ¦   «         j        dt          j        d¦  «        ||t          dœ|¤Ž dS )zy
        @param source: source language to translate from
        @param target: target language to translate to
        zRPlease pass your client id and secret key! visit the papago website for more infosÚ
PAPAGO_API)Úbase_urlr   r   Ú	languagesN© )Ú	Exceptionr   r   ÚsuperÚ__init__r   Úgetr   )Úselfr   r   r   r   ÚkwargsÚ	__class__s         €úGC:\Projects\Historical\venv\Lib\site-packages\deep_translator/papago.pyr   zPapagoTranslator.__init__   sˆ   ø€ ð ð 	 
ð 	ÝØdñô ð ð #ˆŒØ$ˆŒØ�‰ŒÔð 	
Ý”] <Ñ0Ô0ØØÝ-ð		
ð 	
ð
 ð	
ð 	
ð 	
ð 	
ð 	
ó    ÚtextÚreturnc                 óò  — t          |¦  «        rç| j        | j        |dœ}| j        | j        ddœ}t          j        | j        ||¬¦  «        }t          |j	        ¬¦  «        rt          d|j	        › �¦  «        ‚t          j        |j        ¦  «        }d|vrt          |¦  «        ‚|                     d¦  «        }|                     dd	¦  «        }|st          |¦  «        ‚|                     d
¦  «        }	|	S d	S )zž
        function that uses google translate to translate a text
        @param text: desired text to translate
        @return: str: translated text
        )r   r   r!   z0application/x-www-form-urlencoded; charset=UTF-8)zX-Naver-Client-IdzX-Naver-Client-SecretzContent-Type)ÚheadersÚdata)Ústatus_codez#Translation error! -> status code: ÚmessageÚresultNÚtranslatedText)r	   Ú_sourceÚ_targetr   r   ÚrequestsÚpostÚ	_base_urlr
   r&   r   ÚjsonÚloadsr!   r   r   )
r   r!   r   Úpayloadr$   ÚresponseÚres_bodyÚmsgr(   Útranslated_texts
             r   Ú	translatezPapagoTranslator.translate2   s)  € õ ˜$ÑÔð 	#àœ,Øœ,Øðð ˆGð &*¤^Ø)-¬Ø Rðð ˆGõ
  ”}Ø”¨°gðñ ô ˆHõ ¨(Ô*>Ð?Ñ?Ô?ð ÝØP¸(Ô:NÐPÐPñô ð õ ”z (¤-Ñ0Ô0ˆHØ Ð(Ð(Ý)¨$Ñ/Ô/Ð/à—,’,˜yÑ)Ô)ˆCØ—W’W˜X tÑ,Ô,ˆFØð 0Ý)¨$Ñ/Ô/Ð/Ø$ŸjšjÐ)9Ñ:Ô:ˆOØ"Ð"ð7	#ð 	#r    Úpathc                 ó   —  | j         |fi |¤ŽS )z¯
        translate directly from file
        @param path: path to the target file
        @type path: str
        @param kwargs: additional args
        @return: str
        )Ú_translate_file)r   r7   r   s      r   Útranslate_filezPapagoTranslator.translate_fileU   s   € ð $ˆtÔ# DÐ3Ð3¨FÐ3Ð3Ð3r    Úbatchc                 ó   —  | j         |fi |¤ŽS )z‹
        translate a list of texts
        @param batch: list of texts you want to translate
        @return: list of translations
        )Ú_translate_batch)r   r;   r   s      r   Útranslate_batchz PapagoTranslator.translate_batch_   s   € ð %ˆtÔ$ UÐ5Ð5¨fÐ5Ð5Ð5r    )NNr   r   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   Ústrr   r6   r:   r   r>   Ú__classcell__)r   s   @r   r   r      s÷   ø€ € € € € ðð ð $(Ø$(ØØð
ð 
à˜C”=ð
ð ˜S”Mð
ð ð	
ð
 ð
ð 
ð 
ð 
ð 
ð 
ð6!#˜cð !#°ð !#ð !#ð !#ð !#ðF4 3ð 4°Sð 4ð 4ð 4ð 4ð6 T¨#¤Yð 6¸TÀ#¼Yð 6ð 6ð 6ð 6ð 6ð 6ð 6ð 6r    r   )rB   Ú__copyright__r/   Útypingr   r   r,   Údeep_translator.baser   Údeep_translator.constantsr   r   Údeep_translator.exceptionsr   Údeep_translator.validater	   r
   r   r   r    r   ú<module>rK      sÒ   ððð ð 5€à €€€Ø !Ð !Ð !Ð !Ð !Ð !Ð !Ð !à €€€à /Ð /Ð /Ð /Ð /Ð /Ø HÐ HÐ HÐ HÐ HÐ HÐ HÐ HØ :Ð :Ð :Ð :Ð :Ð :Ø CÐ CÐ CÐ CÐ CÐ CÐ CÐ CðS6ð S6ð S6ð S6ð S6�~ñ S6ô S6ð S6ð S6ð S6r    