o
    Zh*                     @   s4   d dl mZmZ d dlmZmZ G dd deZdS )    )AnySequence)BaseDocumentTransformerDocumentc                   @   sd   e Zd ZdZddededdfddZd	ee d
edee fddZ	d	ee d
edee fddZ
dS )Html2TextTransformera  Replace occurrences of a particular search pattern with a replacement string

    Arguments:
        ignore_links: Whether links should be ignored; defaults to True.
        ignore_images: Whether images should be ignored; defaults to True.

    Example:
        .. code-block:: python
            from langchain_community.document_transformers import Html2TextTransformer
            html2text = Html2TextTransformer()
            docs_transform = html2text.transform_documents(docs)
    Tignore_linksignore_imagesreturnNc                 C   s   || _ || _d S N)r   r   )selfr   r    r   j/var/www/html/lang_env/lib/python3.10/site-packages/langchain_community/document_transformers/html2text.py__init__   s   
zHtml2TextTransformer.__init__	documentskwargsc                 K   sr   zdd l }W n ty   tdw | }| j|_| j|_g }|D ]}t||ji |jd}|	| q"|S )Nr   z\html2text package not found, please 
                install it with `pip install html2text`)page_contentmetadata)
	html2textImportErrorZ	HTML2Textr   r   r   handler   r   append)r   r   r   r   hZnew_documentsdZnew_documentr   r   r   transform_documents   s"   z(Html2TextTransformer.transform_documentsc                    s   t r
   )NotImplementedError)r   r   r   r   r   r   atransform_documents3   s   z)Html2TextTransformer.atransform_documents)TT)__name__
__module____qualname____doc__boolr   r   r   r   r   r   r   r   r   r   r      s"    
r   N)typingr   r   Zlangchain_core.documentsr   r   r   r   r   r   r   <module>   s    