Skip to main content
Open In Colab在 GitHub 上打开

BSHTMLLoader

此笔记本提供了 BeautifulSoup4 文档加载器入门的快速概述。有关所有__ModuleName__Loader功能和配置的详细文档,请参阅 API 参考

概述

集成详细信息

本地化序列 化JS 支持
BSHTMLLoaderlangchain_community

Loader 功能

文档延迟加载原生异步支持
BSHTMLLoader

设置

要访问 BSHTMLLoader 文档加载器,您需要安装langchain-community集成包和bs4python 软件包。

凭据

使用BSHTMLLoader类。

要启用模型调用的自动跟踪,请设置您的 LangSmith API 密钥:

# os.environ["LANGSMITH_API_KEY"] = getpass.getpass("Enter your LangSmith API key: ")
# os.environ["LANGSMITH_TRACING"] = "true"

安装

安装 langchain_communitybs4

%pip install -qU langchain_community bs4

初始化

现在我们可以实例化我们的模型对象并加载文档:

  • TODO:使用相关参数更新模型实例化。
from langchain_community.document_loaders import BSHTMLLoader

loader = BSHTMLLoader(
file_path="./example_data/fake-content.html",
)
API 参考:BSHTMLLoader

负荷

docs = loader.load()
docs[0]
Document(metadata={'source': './example_data/fake-content.html', 'title': 'Test Title'}, page_content='\nTest Title\n\n\nMy First Heading\nMy first paragraph.\n\n\n')
print(docs[0].metadata)
{'source': './example_data/fake-content.html', 'title': 'Test Title'}

延迟加载

page = []
for doc in loader.lazy_load():
page.append(doc)
if len(page) >= 10:
# do some paged operation, e.g.
# index.upsert(page)

page = []
page[0]
Document(metadata={'source': './example_data/fake-content.html', 'title': 'Test Title'}, page_content='\nTest Title\n\n\nMy First Heading\nMy first paragraph.\n\n\n')

向 BS4 添加分隔符

我们还可以传递一个分隔符,以便在对 sup 调用 get_text 时使用

loader = BSHTMLLoader(
file_path="./example_data/fake-content.html", get_text_separator=", "
)

docs = loader.load()
print(docs[0])
page_content='
, Test Title,
,
,
, My First Heading,
, My first paragraph.,
,
,
' metadata={'source': './example_data/fake-content.html', 'title': 'Test Title'}

API 参考

有关所有 BSHTMLLoader 功能和配置的详细文档,请访问 API 参考:https://python.langchain.com/api_reference/community/document_loaders/langchain_community.document_loaders.html_bs.BSHTMLLoader.html