
    ^i                         S r SSKJr  SSKJr  SSKJrJr  SSKJ	r	  SSK
Jr  SSKJr  S\S	\4S
 jr " S S\\   5      rg)Yahoo search engine.    )Mapping)token_urlsafe)AnyClassVar)unquote_plus)BaseSearchEngine)
TextResultureturnc                     U R                  SS5      S   n[        UR                  SS5      S   R                  SS5      S   5      $ )zSanitize url./RU=   z/RK=r   z/RS=)splitr   )r   ts     L/home/james-whalen/.local/lib/python3.13/site-packages/ddgs/engines/yahoo.pyextract_urlr      sD    	1A*1-33FA>qABB    c                       \ rS rSr% SrSrSrSrSrSr	Sr
S	S
SS.r\\\\4      \S'    SS\S\S\S\S-  S\S\S\\\4   4S jjrS\\   S\\   4S jrSrg)Yahoo   r   yahootextbingzhttps://search.yahoo.com/searchGETz"//div[contains(@class, 'relsrch')]z-.//div[contains(@class, 'Title')]//h3//text()z*.//div[contains(@class, 'Title')]//a/@hrefz(.//div[contains(@class, 'Text')]//text())titlehrefbodyelements_xpathqueryregion
safesearch	timelimitNpagekwargsr   c                     S[        S5       S[        S5       3U l        SU0nUS:  a  US-
  S-  S-    US'   U(       a  XGS	'   U$ )
z'Build a payload for the search request.z%https://search.yahoo.com/search;_ylt=r   z;_ylu=#   pr      bbtf)r   
search_url)selfr    r!   r"   r#   r$   r%   payloads           r   build_payloadYahoo.build_payload#   sc     4M+4N3OvVcdoVpUqr 	 ,!8#ax1nq01GCL&ENr   resultsc                     / nU H`  nUR                   R                  S5      (       a  M%  SUR                   ;   a  [        UR                   5      Ul         UR                  U5        Mb     U$ )zPost-process search results.zhttps://www.bing.com/aclick?r   )r   
startswithr   append)r-   r1   post_resultsresults       r   post_extract_resultsYahoo.post_extract_results7   s\    F{{%%&DEE$)&++6'  r   )r,   )r   )__name__
__module____qualname____firstlineno____doc__namecategoryproviderr,   search_methoditems_xpathr   r   r   str__annotations__intdictr   r/   listr
   r7   __static_attributes__ r   r   r   r      s    DHH2JM6K@<:3NHWS#X./    	
 :   
c3h(	D,< 	jAQ 	r   r   N)r=   collections.abcr   secretsr   typingr   r   urllib.parser   	ddgs.baser	   ddgs.resultsr
   rC   r   r   rI   r   r   <module>rP      sB     # !   % & #C3 C3 C.Z( .r   