Format: application/x-python-code
⬇ Download File (2.3 KB)
   1  o
   2  
   3  E'hi�@s�ddlmZddlZddlmZddlmZddlmZddl	m
   4  Z
   5  zdZddlZWne
   6  y9d	ZddlZYnwe�d
   7  �Zd#dd�Zd$dd�Zd%dd�Zd&dd�Zd'dd�Zd(d!d"�ZdS))�)�annotationsN)�unescape)�Any)�unquote�)�DuckDuckGoSearchExceptionTFz<.*?>�objr�return�strc
   8  Cs`ztrtj|tjd���WStj|ddd�WSty/}z
   9  tt|�j	�d|���|�d}~ww)N)�optionF�)�ensure_ascii�indent�: )
  10  �
  11  HAS_ORJSON�orjson�dumpsZOPT_INDENT_2�decode�json�	Exceptionr�type�__name__�r�ex�r�MC:\Users\shubh\Videos\agent\nova\Lib\site-packages\duckduckgo_search/utils.py�
  12  json_dumpss�����r�str | bytesc
  13  CsPztr	t�|�WSt�|�WSty'}z
  14  tt|�j�d|���|�d}~ww)Nr)rr�loadsrrrrrrrrr�
  15  json_loadss��r�
  16  html_bytes�bytes�keywordsc	CsbdD]&\}}}z|�|�|}|�||�}|||���WSty(Yqwtd|�d���)zExtract vqd from html bytes.))svqd="��")svqd=��&)svqd='r#�'z_extract_vqd() keywords=z Could not extract vqd.)�indexr�
  17  ValueErrorr)r r"�c1Zc1_len�c2�start�endrrr�_extract_vqd&s�r.�raw_htmlcCs|r
  18  tt�d|��SdS)z)Strip HTML tags from the raw_html string.�)r�REGEX_STRIP_TAGS�sub)r/rrr�
  19  _normalize6�r3�urlcCs|r
  20  t|��dd�SdS)z(Unquote URL and replace spaces with '+'.� �+r0)r�replace)r5rrr�_normalize_url;r4r9�proxy�
  21  str | NonecCs|dkrdS|S)z.Expand "tb" to a full proxy URL if applicable.�tbzsocks5://127.0.0.1:9150r)r:rrr�_expand_proxy_tb_alias@sr=)rrr	r
  22  )rrr	r)r r!r"r
  23  r	r
  24  )r/r
  25  r	r
  26  )r5r
  27  r	r
  28  )r:r;r	r;)�
  29  __future__r�re�htmlr�typingr�urllib.parser�
  30  exceptionsrrr�ImportErrorr�compiler1rrr.r3r9r=rrrr�<module>s(�
  31  
  32  
  33  
  34  
  35  
  36