
    hh8                         d dl Z d dlZd dlZd dlmZmZ d dlmZ d dlm	Z	 d dl
mZ  e j        e          Z G d de	          ZdS )    N)AnyIterator)Document)
BaseLoader)UnstructuredFileLoaderc                   >    e Zd ZdZdededefdZdee         fdZ	dS )	BaiduBOSFileLoaderz!Load from `Baidu Cloud BOS` file.confbucketkeyc                 0    || _         || _        || _        dS )zInitialize with BOS config, bucket and key name.
        :param conf(BceClientConfiguration): BOS config.
        :param bucket(str): BOS bucket.
        :param key(str): BOS file key.
        N)r
   r   r   )selfr
   r   r   s       u/var/www/FlaskApp/flask-venv/lib/python3.11/site-packages/langchain_community/document_loaders/baiducloud_bos_file.py__init__zBaiduBOSFileLoader.__init__   s     	    returnc                    	 ddl m} n# t          $ r t          d          w xY w || j                  }t	          j                    5 }| d| j         d| j         }t          j	        t          j
                            |          d           t                              d| j         d|            |                    | j        | j        |           	 t          |          }|                                }t#          |          cd	d	d	           S # t$          $ rQ}t                              d
|            t#          t)          d          g          cY d	}~cd	d	d	           S d	}~ww xY w# 1 swxY w Y   d	S )zLoad documents.r   )	BosClientzLPlease using `pip install bce-python-sdk` before import bos related package./T)exist_okzget object key z	 to file Nzload document error =  )page_content) baidubce.services.bos.bos_clientr   ImportErrorr
   tempfileTemporaryDirectoryr   r   osmakedirspathdirnameloggerdebugget_object_to_filer   loaditer	Exceptionerrorr   )r   r   clienttemp_dir	file_pathloader	documentsexs           r   	lazy_loadzBaiduBOSFileLoader.lazy_load   s   	BBBBBBB 	 	 	8  	 49%%(** 	9h#>>dk>>DH>>IK	22TBBBBLLI48IIiIIJJJ%%dk48YGGG9/	::"KKMM	I	9 	9 	9 	9 	9 	9 	9 	9  9 9 9:b::;;;X266678888888	9 	9 	9 	9 	9 	9 	9 	99	9 	9 	9 	9 	9 	9 	9 	9 	9 	9sE   	 #	BE41D
E1 :E,E1E4,E11E44E8;E8N)
__name__
__module____qualname____doc__r   strr   r   r   r.    r   r   r	   r	      sc        ++S # C    98H- 9 9 9 9 9 9r   r	   )loggingr   r   typingr   r   langchain_core.documentsr   )langchain_community.document_loaders.baser   1langchain_community.document_loaders.unstructuredr   	getLoggerr/   r!   r	   r4   r   r   <module>r;      s     				                  - - - - - - @ @ @ @ @ @ T T T T T T		8	$	$%9 %9 %9 %9 %9 %9 %9 %9 %9 %9r   