A Python SDK for accessing files in OneDrive & SharePoint using the Microsoft Graph API.
Functionality includes:
- Upload and download files
- List files and folders in directories
- List the SharePoint sites that you follow
- Search for a SharePoint site and it's drives
Requires Python 3.7+
pip install onedrive-sharepoint-python-sdk
See the examples folder for more.
from msdrive import OneDrive
drive = OneDrive("access_token_here")
drive.download_item(item_path="/Documents/my-data.csv", file_path="my-data.csv")
drive.upload_item(item_path="/Documents/new-or-existing-file.csv", file_path="new-or-existing-file.csv")
from msdrive import SharePoint
drive = SharePoint("access_token_here")
drive.download_item(drive_id="b!...", item_path="/General/shared-data.csv", file_path="shared-data.csv")
drive.upload_item(drive_id="b!...", item_path="/General/new-or-existing-file.csv", file_path="new-or-existing-file.csv")
The SDK does not handle authentication, it presumes you already have a Microsoft access token which you pass into the constructor (see auth example).
Use a library like MSAL or Azure Identity to handle this.
pip install -e .[tests]
pytest # run unit tests
Bump the version in pyproject.toml
and src/msdrive/__init__.py
and then run the Upload Python Package
pipeline.