BSHTMLLoader
这个笔记本提供了一个关于如何使用 BeautifulSoup4 文档加载器 的快速入门。要详细了解所有 __ModuleName__Loader 特性和配置,请参阅 API 参考。
概览
集成细节
| Class | 包 | 本地 | 序列化 | JS支持 |
|---|---|---|---|---|
| BSHTMLLoader | langchain_community | ✅ | ❌ | ❌ |
加载器功能
| 来源 | 文档延迟加载 | 原生异步支持 |
|---|---|---|
| BSHTMLLoader | ✅ | ❌ |
设置
要访问BSHTMLLoader文档加载器,您需要安装langchain-community集成包和bs4Python包。
Credentials
无需凭证即可使用BSHTMLLoader类。
要启用对您的模型调用的自动跟踪,请设置您的LangSmith API密钥:
# os.environ["LANGSMITH_API_KEY"] = getpass.getpass("Enter your LangSmith API key: ")
# os.environ["LANGSMITH_TRACING"] = "true"
安装
安装 langchain_community 和 bs4。
%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
我们也可以在调用soup的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功能和配置: https://python.langchain.com/api_reference/community/document_loaders/langchain_community.document_loaders.html_bs.BSHTMLLoader.html