Format: application/x-python-code
1 o
2
3 E'hi � @ s� d dl mZ d dlZd dlmZ d dlmZ d dlmZ ddl m
4 Z
5 zdZd dlZW n e
6 y9 d Zd dlZY nw e�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 C s` zt rtj| tjd��� W S tj| ddd�W S ty/ } z
9 tt|�j � d|� ��|�d }~ww )N)�optionF� )�ensure_ascii�indent�: )
10 �
11 HAS_ORJSON�orjson�dumpsZOPT_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_dumps s �����r �str | bytesc
13 C sP zt r t�| �W S t�| �W S ty' } z
14 tt|�j� d|� ��|�d }~ww )Nr )r r �loadsr r r r r r r r r �
15 json_loads s ��r �
16 html_bytes�bytes�keywordsc C sb dD ]&\}}}z| � |�| }| � ||�}| ||� �� W S ty( Y qw td|�d���)zExtract vqd from html bytes.))s vqd="� � ")s vqd=� � &)s vqd='r# � 'z_extract_vqd() keywords=z Could not extract vqd.)�indexr �
17 ValueErrorr )r r"