
    i                     ^    d Z ddlmZ ddlmZmZ ddlmZ dddddd	Zd
gZdZ	dZ
dZd Zd Zy)z?Sogou-Videos: A search engine for retrieving videos from Sogou.    )	urlencode)datetime	timedelta)SearxEngineAPIExceptionzhttps://v.sogou.com/FJSONzh)websiteuse_official_apirequire_api_keyresultslanguagevideosT
   zhttps://v.sogou.comc                 F    |d   d| d}t          dt        |       |d<   |S )Npagenor   )pagepagesizequeryz/api/video/shortVideoV2?url)base_urlr   )r   paramsquery_paramss      +/root/searxng/searx/engines/sogou_videos.pyrequestr      s9    x L  j 8<9P8QRF5MM    c                 Z   	 | j                         }g }|j                  di       j                  d      st        d      |d   d   D ]  }|j                  d      r|j                  d      s'|j                  d      }|j	                  d      r
t
         | }d }|j                  d      r+|j                  d	      r	 t        j                  |d   d
      }d }|j                  d      rL|j                  d	      r;	 t        j                  |d	   d      }t        |j                  |j                        }|j                  ||d   |d   |d||d   d        |S # t        $ r}t        d|       |d }~ww xY w# t        t        f$ r d }Y w xY w# t        t        f$ r d }Y qw xY w)NzInvalid response: datalistzInvalid responsetitleEscr   z/vc/npdatedurationz%Y-%m-%dz%M:%S)minutessecondssitezvideos.htmlpicurl)r   titlecontentlengthtemplatepublishedDate	thumbnail)json	Exceptionr   get
startswithr   r   strptime
ValueError	TypeErrorr   minutesecondappend)	respr   er   entry	video_urlpublished_dater(   timediffs	            r   responser<   $   s   Gyy{ G88FB##F+%&899ff% !
yy$EIIe,<IIe$	)#*YK0I99V:!6&!)!2!25=*!M 99V:!6#,,U:->H"8??HOOT 	 z* = )!/"8_
	
/!
F NU  G%(:1#&>?QFG& 	* &!%& 	* s;   E  E?>:F	E<(E77E<?FFF*)F*N)__doc__urllib.parser   r   r   searx.exceptionsr   about
categoriespagingresults_per_pager   r   r<    r   r   <module>rE      sN    E " ( 4 &	 Z
	  !-r   