§
    6»ja  ã                   óf   — d Z ddlmZ ddlmZmZ ddlmZ ddlm	Z	  G d„ dee	         ¦  «        Z
dS )	z#Brave search engine implementation.é    )ÚMapping)ÚAnyÚClassVar)ÚBaseSearchEngine)Ú
TextResultc                   óœ   — 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S )ÚBravezBrave search engine.ÚbraveÚtextzhttps://search.brave.com/searchÚGETz//div[@data-type='web']zi.//div[(contains(@class,'title') or contains(@class,'sitename-container')) and position()=last()]//text()z*.//a[div[contains(@class, 'title')]]/@hrefzM.//div[contains(@class, 'snippet')]//div[contains(@class, 'content')]//text())ÚtitleÚhrefÚbodyÚelements_xpathé   ÚqueryÚregionÚ
safesearchÚ	timelimitNÚpageÚkwargsÚreturnc                 ó  — |ddœ}|                      ¦   «                              d¦  «        \  }}	||ddi}
|dk    r|dk    rdnd	|
d
<   | j        j                             d|
¦  «         |rdddddœ|         |d<   |dk    r	|dz
  › |d<   |S )z'Build a payload for the search request.Úweb)ÚqÚsourceÚ-ÚuseLocationÚ0ÚmoderateÚonÚstrictÚoffr   zhttps://search.brave.comÚpdÚpwÚpmÚpy)ÚdÚwÚmÚyÚtfr   Úoffset)ÚlowerÚsplitÚhttp_clientÚclientÚset_cookies)Úselfr   r   r   r   r   r   ÚpayloadÚcountryÚ_langÚcookiess              úT/root/.hermes/hermes-agent/venv/lib64/python3.11/site-packages/ddgs/engines/brave.pyÚbuild_payloadzBrave.build_payload   s¿   € ð ¨Ð/Ð/ˆØŸš™œ×-Ò-¨cÑ2Ô2‰ˆØ˜G ]°CÐ8ˆØ˜Ò#Ð#Ø0:¸dÒ0BÐ0B H HÈˆGLÑ!ØÔÔ×+Ò+Ð,FÈÑPÔPÐPØð 	TØ"&¨T¸À4ÐHÐHÈÔSˆGD‰MØ!Š8ˆ8Ø#'¨!¡8 ˆGHÑØˆó    )r   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚcategoryÚproviderÚ
search_urlÚsearch_methodÚitems_xpathr   r   r   ÚstrÚ__annotations__ÚintÚdictr   r9   © r:   r8   r	   r	   
   sÜ   € € € € € € ØÐà€DØ€HØ€Hà2€JØ€Mà+€Kà|Ø<Ø_ð3ð 3€NH˜W S¨# XÔ.Ô/ð ð ñ ð ðð àðð ðð ð	ð
 ˜‘:ðð ðð ðð 
ˆc3ˆhŒðð ð ð ð ð r:   r	   N)r>   Úcollections.abcr   Útypingr   r   Ú	ddgs.baser   Úddgs.resultsr   r	   rI   r:   r8   ú<module>rN      s“   ðØ )Ð )à #Ð #Ð #Ð #Ð #Ð #Ø  Ð  Ð  Ð  Ð  Ð  Ð  Ð  à &Ð &Ð &Ð &Ð &Ð &Ø #Ð #Ð #Ð #Ð #Ð #ð%ð %ð %ð %ð %Ð˜ZÔ(ñ %ô %ð %ð %ð %r:   