Features:
Indexes Dropbox Files
The following file types are supported:
md
htm
html
docx
xls
xlsx
pptx
pdf
rtf
txt
(doc
support would require libreoffice, so has not been implemented in this library)
You can do the install as described below, or build/run the provider dockerfile.
Edit dropbox-test.py, fill in the correct auth
and one of folder_path
, file_path
, or file_paths
.
Run (this also builds docker):
docker run -it $(docker build -q .)
Install dependencies:
pip install -r requirements.txt
To use a refresh token, pass in api_key
along with api_secret
from dropbox_files import DropboxLoader
auth = {
"access_token": "ACCESS_TOKEN_FROM_OAUTH",
"refresh_token": "REFRESH_TOKEN",
"expires_at": "EXPIRE_TIMESTAMP"
}
loader = DropboxLoader(
auth = auth,
folder_path = "/PATH_TO_FOLDER_OR_EMPTY_STRING",
# file_path = "/PATH/TO_FILE/File.extension",
# file_paths = [
# "/PATH/TO_FILE/File 1.extension",
# "/PATH/TO_FILE/File 2.extension"
# ],
# api_key = "API_KEY",
# api_secret = "API_SECRET",
)
documents = loader.load()
print("\nDocuments:\n")
print(documents)
print("\nInvalid files:\n")
print(loader.invalid_files)
print("")
print("\nErrors:\n")
print(loader.errors)
print("")
If errors are present, loader.errors
will contain one list element per error. It will consist of an error message (key named message
) and if the error pertains to a folder issue, a key named folder
, for files a file
key. Right now the library only catches Dropbox API specific exceptions.