From 7c0b1b8171ed45d300b30a60bd984a6a34815fdd Mon Sep 17 00:00:00 2001 From: Mike Salvatore Date: Mon, 21 Aug 2023 16:18:35 -0400 Subject: [PATCH] Add session to ConfluenceLoader.__init__() (#9437) - Description: Allows the user of `ConfluenceLoader` to pass a `requests.Session` object in lieu of an authentication mechanism - Issue: None - Dependencies: None - Tag maintainer: @hwchase17 --- libs/langchain/langchain/document_loaders/confluence.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/libs/langchain/langchain/document_loaders/confluence.py b/libs/langchain/langchain/document_loaders/confluence.py index d5b4c3de7c8..59d4be02229 100644 --- a/libs/langchain/langchain/document_loaders/confluence.py +++ b/libs/langchain/langchain/document_loaders/confluence.py @@ -3,6 +3,7 @@ from enum import Enum from io import BytesIO from typing import Any, Callable, Dict, List, Optional, Union +import requests from tenacity import ( before_sleep_log, retry, @@ -106,6 +107,7 @@ class ConfluenceLoader(BaseLoader): url: str, api_key: Optional[str] = None, username: Optional[str] = None, + session: Optional[requests.Session] = None, oauth2: Optional[dict] = None, token: Optional[str] = None, cloud: Optional[bool] = True, @@ -134,7 +136,9 @@ class ConfluenceLoader(BaseLoader): "`pip install atlassian-python-api`" ) - if oauth2: + if session: + self.confluence = Confluence(url=url, session=session, **confluence_kwargs) + elif oauth2: self.confluence = Confluence( url=url, oauth2=oauth2, cloud=cloud, **confluence_kwargs )