a
    bg                     @   s<   d Z ddlmZ ddlmZ ddlmZ G dd deZdS )zWrapper around wikipedia API.    )Union)Document)Docstorec                   @   s6   e Zd ZdZddddZeeeef dddZdS )		WikipediazWikipedia API.N)returnc                 C   s,   zddl }W n ty&   tdY n0 dS )z*Check that wikipedia package is installed.r   NzZCould not import wikipedia python package. Please install it with `pip install wikipedia`.)	wikipediaImportError)selfr    r
   t/var/www/html/cobodadashboardai.evdpl.com/venv/lib/python3.9/site-packages/langchain_community/docstore/wikipedia.py__init__   s    zWikipedia.__init__)searchr   c              	   C   s   ddl }z,||j}||j}t|d|id}W nR |jy^   d| d|| }Y n* |jy   d| d|| }Y n0 |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   Z	PageErrorr   ZDisambiguationError)r	   r   r   r   r   resultr
   r
   r   r      s    
zWikipedia.search)	__name__
__module____qualname____doc__r   strr   r   r   r
   r
   r
   r   r   
   s   
r   N)r   typingr   Zlangchain_core.documentsr   Z!langchain_community.docstore.baser   r   r
   r
   r
   r   <module>   s   