BSHTMLLoader#

class langchain_community.document_loaders.html_bs.BSHTMLLoader(file_path: str | Path, open_encoding: str | None = None, bs_kwargs: dict | None = None, get_text_separator: str = '')[source]#

__ModuleName__ 文档加载器集成

Setup:

安装 langchain-communitybs4

pip install -U langchain-community bs4
Instantiate:
from langchain_community.document_loaders import BSHTMLLoader

loader = BSHTMLLoader(
    file_path="./example_data/fake-content.html",
)
Lazy load:
docs = []
docs_lazy = loader.lazy_load()

# async variant:
# docs_lazy = await loader.alazy_load()

for doc in docs_lazy:
    docs.append(doc)
print(docs[0].page_content[:100])
print(docs[0].metadata)
Test Title


My First Heading
My first paragraph.



{'source': './example_data/fake-content.html', 'title': 'Test Title'}
Async load:
docs = await loader.aload()
print(docs[0].page_content[:100])
print(docs[0].metadata)
Test Title


My First Heading
My first paragraph.



{'source': './example_data/fake-content.html', 'title': 'Test Title'}

使用路径初始化,并可选择使用文件编码,以及任何要传递给BeautifulSoup对象的kwargs。

Parameters:
  • file_path (str | Path) – 要加载的文件的路径。

  • open_encoding (str | None) – 打开文件时使用的编码。

  • bs_kwargs (dict | None) – 任何传递给BeautifulSoup对象的kwargs。

  • get_text_separator (str) – 在调用soup的get_text时使用的分隔符。

方法

__init__(file_path[, open_encoding, ...])

使用路径初始化,并可选择性地使用文件编码以及传递给BeautifulSoup对象的任何kwargs。

alazy_load()

一个用于文档的懒加载器。

aload()

将数据加载到Document对象中。

lazy_load()

将HTML文档加载到文档对象中。

load()

将数据加载到Document对象中。

load_and_split([text_splitter])

加载文档并将其分割成块。

__init__(file_path: str | Path, open_encoding: str | None = None, bs_kwargs: dict | None = None, get_text_separator: str = '') None[source]#

使用路径初始化,并可选择使用文件编码,以及任何要传递给BeautifulSoup对象的kwargs。

Parameters:
  • file_path (str | Path) – 要加载的文件的路径。

  • open_encoding (str | None) – 打开文件时使用的编码。

  • bs_kwargs (dict | None) – 任何传递给BeautifulSoup对象的kwargs。

  • get_text_separator (str) – 在调用soup的get_text时使用的分隔符。

Return type:

async alazy_load() AsyncIterator[Document]#

文档的懒加载器。

Return type:

AsyncIterator[Document]

async aload() list[Document]#

将数据加载到Document对象中。

Return type:

列表[Document]

lazy_load() Iterator[Document][source]#

将HTML文档加载到文档对象中。

Return type:

迭代器[文档]

load() list[Document]#

将数据加载到Document对象中。

Return type:

列表[Document]

load_and_split(text_splitter: TextSplitter | None = None) list[Document]#

加载文档并将其分割成块。块以文档形式返回。

不要重写此方法。它应该被视为已弃用!

Parameters:

text_splitter (可选[TextSplitter]) – 用于分割文档的TextSplitter实例。 默认为RecursiveCharacterTextSplitter。

Returns:

文档列表。

Return type:

列表[Document]

使用 BSHTMLLoader 的示例