
    Ng                     J    d Z ddlmZ ddlmZ ddlmZ  G d de          ZdS )zWrapper around wikipedia API.    )Union)Document)Docstorec                   :    e Zd ZdZddZdedeeef         fdZdS )	WikipediazWikipedia API.returnNc                 J    	 ddl }dS # t          $ r t          d          w xY w)z*Check that wikipedia package is installed.r   NzZCould not import wikipedia python package. Please install it with `pip install wikipedia`.)	wikipediaImportError)selfr
   s     b/var/www/html/ai-engine/env/lib/python3.11/site-packages/langchain_community/docstore/wikipedia.py__init__zWikipedia.__init__   sL    	 	 	 	B  	s    "searchc                 B   ddl }	 |                    |          j        }|                    |          j        }t	          |d|i          }nQ# |j        $ r d| d|                    |           }Y n*|j        $ r d| d|                    |           }Y nw xY w|S )a  Try to search for wiki page.

        If page exists, return the page summary, and a PageWithLookups object.
        If page does not exist, return similar entries.

        Args:
            search: search string.

        Returns: a Document object or error message.
        r   Npage)page_contentmetadatazCould not find [z]. Similar: )r
   r   contenturlr   	PageErrorr   DisambiguationError)r   r   r
   r   r   results         r   r   zWikipedia.search   s     			W$>>&119L..((,C+3)VSM, , ,FF " 	W 	W 	WVVVI<L<LV<T<TVVFFF, 	W 	W 	WVVVI<L<LV<T<TVVFFF	Ws   AA %B5$BB)r   N)	__name__
__module____qualname____doc__r   strr   r   r        r   r   r   
   sY           S U3=%9      r   r   N)r   typingr   langchain_core.documentsr   !langchain_community.docstore.baser   r   r   r   r   <module>r#      su    # #       - - - - - - 6 6 6 6 6 6$ $ $ $ $ $ $ $ $ $r   