B
    ÌÚek  ã               @   s,   d dl Z d dlmZ eƒ ZG dd„ dƒZdS )é    N)ÚWordNetLemmatizerc               @   s   e Zd Zdd„ Zd	dd„ZdS )
ÚWordsApic          	   C   s^   || _ || _t|dd}t |¡| _W d Q R X t|dd}| j t |¡¡ W d Q R X d S )Nzutf-8)Úencoding)ÚpathÚ
path_extraÚopenÚjsonÚloadÚdataÚupdate)Úselfr   r   Úf© r   ú@/home/dictionary/smart-dictionary-consec/app/gogyup/words_api.pyÚ__init__   s    zWordsApi.__init__Ú r   é
   c       
   	   C   s  |  ¡ }t |¡}g }tƒ }xl| j |i ¡ dg ¡D ]R}|dksN| d¡|kr4| dd¡}	|	|kr4| |	¡ | ||	| dd¡dœ¡ q4W ||krxl| j |i ¡ dg ¡D ]R}|dksÆ| d¡|kr¬| dd¡}	|	|kr¬| |	¡ | ||	| dd¡dœ¡ q¬W |||| … S )NÚdefinitionsr   ÚpartOfSpeechÚ
definition)Úlemmar   r   )ÚlowerÚ
lemmatizerZ	lemmatizeÚsetr
   ÚgetÚaddÚappend)
r   ÚwordÚposÚoffsetÚlimitr   r   Zdefinitions_seenÚdr   r   r   r   Úlookup    s0    



zWordsApi.lookupN)r   r   r   )Ú__name__Ú
__module__Ú__qualname__r   r"   r   r   r   r   r      s   r   )r   Z	nltk.stemr   r   r   r   r   r   r   Ú<module>   s   