json_parser.cpython-312.pyc•1.32 kB
�
�E,h� � �2 � d dl Z d dlmZmZ dedee fd�Zy)� N)�Optional�Any�texto�returnc �� � | j d� }|dk( ryt |dz t | � dz � D ] }| || } t j |� c S y# t j
$ r Y �7w xY w)u�
Extrae el primer bloque JSON válido de un texto buscando desde la primera llave '{'.
Esta función intenta construir progresivamente un fragmento válido de JSON a partir de la primera
llave de apertura encontrada en el texto. Retorna el primer objeto decodificado correctamente.
Args:
texto (str): Texto potencialmente con un JSON embebido.
Returns:
Optional[Any]: Diccionario o lista decodificada si se encuentra un JSON válido, o None si no se encuentra.
�{�����N� )�find�range�len�json�loads�JSONDecodeError)r �inicio�fin� fragmentos �//home/agomez/Proyectos/MCP/utils/json_parser.py�extraer_jsonr sw � � �Z�Z��_�F�
��|���V�a�Z��U��a��0���&��%� � ��:�:�i�(�(� 1� �� �#�#� �� �s �A�A+�*A+)r �typingr r �strr � � r �<module>r s"