
    6j                         d Z ddlmZ ddlmZ ddlmZmZ ddlm	Z	 ddl
mZ ddlmZ ded	efd
Z G d dee                   ZdS )Yahoo search engine.    )Mapping)token_urlsafe)AnyClassVar)unquote_plus)BaseSearchEngine)
TextResultureturnc                     |                      dd          d         }t          |                     dd          d                              dd          d                   S )zSanitize url./RU=   z/RK=r   z/RS=)splitr   )r   ts     T/root/.hermes/hermes-agent/venv/lib64/python3.11/site-packages/ddgs/engines/yahoo.pyextract_urlr      sP    	1A**1-33FA>>qABBB    c                       e Zd ZU dZdZdZdZdZdZdZ	dd	d
dZ
eeeef                  ed<   	 ddededededz  dededeeef         fdZdee         dee         fdZdS )Yahoor   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_xpathr   queryregion
safesearch	timelimitNpagekwargsr   c                     dt          d           dt          d           | _        d|i}|dk    r|dz
  dz  dz    |d<   |r||d	<   |S )
z'Build a payload for the search request.z%https://search.yahoo.com/search;_ylt=   z;_ylu=#   pr      bbtf)r   
search_url)selfr   r    r!   r"   r#   r$   payloads           r   build_payloadzYahoo.build_payload#   st     sM+4N4NrrVcdoVpVprr 	 ,!88#ax1nq02GCL 	'&GENr   resultsc                     g }|D ]T}|j                             d          rd|j         v rt          |j                   |_         |                    |           U|S )zPost-process search results.zhttps://www.bing.com/aclick?r   )r   
startswithr   append)r-   r0   post_resultsresults       r   post_extract_resultszYahoo.post_extract_results7   sm     	( 	(F{%%&DEE $$)&+66''''r   )r   )__name__
__module____qualname____doc__namecategoryproviderr,   search_methoditems_xpathr   r   r   str__annotations__intdictr   r/   listr
   r6    r   r   r   r      s        DHH2JM6K@<:3 3NHWS#X./       	
 :   
c3h   (	D,< 	jAQ 	 	 	 	 	 	r   r   N)r:   collections.abcr   secretsr   typingr   r   urllib.parser   	ddgs.baser	   ddgs.resultsr
   r@   r   r   rE   r   r   <module>rL      s      # # # # # # ! ! ! ! ! !                 % % % % % % & & & & & & # # # # # #C3 C3 C C C C. . . . .Z( . . . . .r   