Ë
    µŒj)  ã                   óR   — d dl mZmZmZ d dlmZ d dlmZ d dlm	Z	  G d„ de«      Z
y)é    )ÚIteratorÚLiteralÚOptional)Ú
BaseLoader)ÚDocument)Úget_from_envc            
       óV   — e Zd ZdZddddœdedee   ded   d	ee   fd
„Zde	e
   fd„Zy)ÚSpiderLoaderzªLoad web pages as Documents using Spider AI.

    Must have the Python package `spider-client` installed and a Spider API key.
    See https://spider.cloud for more.
    NÚscrape)Úapi_keyÚmodeÚparamsÚurlr   r   ©r   Úcrawlr   c                óÜ   — |€dddœ}	 ddl m} |dvrt        d	|› d
�«      ‚|xs t	        dd«      } ||¬«      | _         || _        || _        || _        y# t        $ r t        d«      ‚w xY w)aÙ  Initialize with API key and URL.

        Args:
            url: The URL to be processed.
            api_key: The Spider API key. If not specified, will be read from env
            var `SPIDER_API_KEY`.
            mode: The mode to run the loader in. Default is "scrape".
                 Options include "scrape" (single page) and "crawl" (with deeper
                 crawling following subpages).
            params: Additional parameters for the Spider API.
        NÚmarkdownT)Úreturn_formatÚmetadatar   )ÚSpiderzB`spider` package not found, please run `pip install spider-client`r   zUnrecognized mode 'z%'. Expected one of 'scrape', 'crawl'.r   ÚSPIDER_API_KEY)r   )Úspiderr   ÚImportErrorÚ
ValueErrorr   r   r   r   )Úselfr   r   r   r   r   s         úu/var/www/html/Fitness-lenito-AI-main/venv/lib/python3.12/site-packages/langchain_community/document_loaders/spider.pyÚ__init__zSpiderLoader.__init__   s™   € ð& ˆ>à!+Ø ñˆFð
	Ý%ð
 Ð*Ñ*ÜØ% d VÐ+PÐQóð ð
 ÒFœ\¨)Ð5EÓFˆÙ WÔ-ˆŒØˆŒØˆŒ	Øˆ�øô ò 	ÜØTóð ð	ús   ‰A ÁA+Úreturnc              #   óŒ  K  — g }| j                   dk(  rE| j                  j                  | j                  | j                  ¬«      }|re|j                  |«       nS| j                   dk(  rD| j                  j                  | j                  | j                  ¬«      }|r|j                  |«       |D ]’  }| j                   dk(  r;|d   j                  dd«      }|d   j                  di «      }|�t        ||¬	«      –— | j                   dk(  sŒ]|j                  dd«      }|j                  di «      }|€Œ„t        ||¬	«      –— Œ” y­w)
z+Load documents based on the specified mode.r   )r   r   r   ÚcontentÚ r   N)Úpage_contentr   )
r   r   Ú
scrape_urlr   r   ÚappendÚ	crawl_urlÚextendÚgetr   )r   Úspider_docsÚresponseÚdocr"   r   s         r   Ú	lazy_loadzSpiderLoader.lazy_load:   s!  è ø€ àˆà�9‰9˜Ò à—{‘{×-Ñ-¨d¯h©h¸t¿{¹{Ð-ÓKˆHÙØ×"Ñ" 8Õ,Ø�Y‰Y˜'Ò!à—{‘{×,Ñ,¨T¯X©X¸d¿k¹kÐ,ÓJˆHÙØ×"Ñ" 8Ô,ãˆCØ�y‰y˜HÒ$à" 1™vŸz™z¨)°RÓ8�ð ˜q™6Ÿ:™: j°"Ó5�àÐ+Ü"°ÀxÔPÒPØ�y‰y˜GÓ#à"Ÿw™w y°"Ó5�ð Ÿ7™7 :¨rÓ2�àÑ+Ü"Ø%1Ø!)ôó ñ% ùs   ‚DEÄ&EÄ2E)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ústrr   r   Údictr   r   r   r+   © ó    r   r
   r
      s]   „ ñð "&Ø+3Ø!%ò)àð)ð ˜#‘ð	)ð
 Ð'Ñ(ð)ð ˜‘ó)ðV$˜8 HÑ-ô $r3   r
   N)Útypingr   r   r   Úlangchain_core.document_loadersr   Úlangchain_core.documentsr   Úlangchain_core.utilsr   r
   r2   r3   r   Ú<module>r8      s"   ðß .Ñ .å 6Ý -Ý -ôV�:õ Vr3   