
    i                     |    d 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	m
Z
mZmZmZ dddd	d	d
dZdgZdZdZd Zd Zy)z&Kickass Torrent (Videos, Music, Files)    N)
itemgetter)quote)html)
eval_xpatheval_xpath_getindexeval_xpath_listextract_textint_or_zerozhttps://kickasstorrents.to	Q17062285FHTML)websitewikidata_idofficial_api_documentationuse_official_apirequire_api_keyresultsfilesTc                     t        t        t              rt        j                  t              nt        |d<   |d   dt        |        d|d    dz   |d<   |S )Nbase_urlz	/usearch//pagenourl)
isinstancer   listrandomchoicer   )queryparamss     &/root/searxng/searx/engines/kickass.pyrequestr    !   sS    4>x4Nx0T\F::&9U5\N!F8DTCUUV)WWF5MM    c           	      ,   g }t        j                  | j                        }t        |dd       }|g S |dd  D ]  }ddi}t	        |ddd       }| j
                  d   |z   |d<   t        t        |d	            |d
<   t        t        |d            |d<   t        t        t        |d                  |d<   t        t        t        |d                  |d<   t        t        |d            |d<   |j                  |        t        |t        d      d      S )Nz4//table[contains(@class, "data")]//tr[descendant::a]   templateztorrent.htmlz,.//a[contains(@class, "cellMainLink")]/@hrefr   r   r   z&.//a[contains(@class, "cellMainLink")]titlez*.//span[@class="font11px lightgrey block"]contentz .//td[contains(@class, "green")]seedz.//td[contains(@class, "red")]leechz.//td[contains(@class, "nobr")]filesizeT)keyreverse)r   
fromstringtextr   r   search_paramsr	   r   r
   appendsortedr   )respr   dom
search_restagresultr   s          r   responser6   (   s   G
//$))
$C &\^bcJ	!"~ 
n-!#'UWXZ^_**:6<u&z#7_'`aw(C9e)fgy$\*SBd2e%fgv%l:cCc3d&efw)*S:[*\]zv
 'z&14@@r!   )__doc__r   operatorr   urllib.parser   lxmlr   searx.utilsr   r   r   r	   r
   about
categoriespagingr   r    r6    r!   r   <module>r@      sY    ,      ,"&	 Y
	 (Ar!   