Skip to main content

SharePlum is an easier way to work with SharePoint services. It handles all of the messy parts of dealing with SharePoint and allows you to write clean and Pythonic code.

Usage

from shareplum import Site
from requests_ntlm import HttpNtlmAuth

auth = HttpNtlmAuth('DIR\\username', 'password')
site = Site('https://abc.com/sites/MySharePointSite/', auth=auth)
sp_list = site.List('list name')
data = sp_list.GetListItems('All Items', rowlimit=200)

Authenticate to Office365 Sharepoint

from shareplum import Site
from shareplum import Office365

authcookie = Office365('https://abc.sharepoint.com', username='username@abc.com', password='password').GetCookies()
site = Site('https://abc.sharepoint.com/sites/MySharePointSite/', authcookie=authcookie)
sp_list = site.List('list name')
data = sp_list.GetListItems('All Items', rowlimit=200)

Access REST API

from shareplum import Site
from shareplum import Office365
from shareplum.site import Version

authcookie = Office365('https://abc.sharepoint.com', username='username@abc.com', password='password').GetCookies()
site = Site('https://abc.sharepoint.com/sites/MySharePointSite/', version=Version.v2016, authcookie=authcookie)
folder = site.Folder('Shared Documents/This Folder')
folder.upload_file('Hello', 'new.txt')
folder.get_file('new.txt')
folder.check_out('new.txt')
folder.check_in('new.txt', "My check-in comment")
folder.delete_file('new.txt')

Features

  • Reading and writing data to SharePoint lists using Python Dictionaries.

  • Automatic conversion between SharePoint internal names and displayed names.

  • Using Queries to filter data when retrieving List Items.

  • Automatic conversion of data types.

  • Supports Users datatype.

  • Supports Office365 Sharepoint sites.

  • Supports Folder and File operations with the REST API. (Requires SharePoint 2013 or newer)

Documentation

Read the Docs

Contribute

Unit Tests

This package uses python unittest. To run the unit tests, first copy tests/test_settings.py as tests/local_test_seetings.py and edit the contents to point at your sharepoint. Second export your sharepoint password as an environment variable ‘TEST_PASSWORD’ Then from the root folder run:

python -m unittest disover  # all tests
python -m unittest tests.test_site  # all site tests

License

This project is licensed under the MIT license.

Release files for SharePlum 0.5.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for SharePlum 0.5.1
File Size Uploaded
SharePlum-0.5.1.tar.gz 14.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for SharePlum 0.5.1
File Interpreter ABI Platform
SharePlum-0.5.1-py2.py3-none-any.whl Python 2, Python 3 none any Details

Total release size: 40.6 kB

Release files / SharePlum-0.5.1.tar.gz

Download URL SharePlum-0.5.1.tar.gz
Size 14.7 kB
Tags Source
SHA-256 checksum
How to use checksums
07a45d48920450092e56c33846fe17768d4611dc83a7314ef0140e57dee52966
BLAKE2b-256 checksum
How to use checksums
db862152ac9cc7230fa7d5b93b4f9e0776773f4959a4f1a2f9ca4622dae932c8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/46.0.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.8.1

Release files / SharePlum-0.5.1-py2.py3-none-any.whl

Download URL SharePlum-0.5.1-py2.py3-none-any.whl
Size 25.8 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
e7450aafeb84d529f8fba2cac7057ab393ad921c4596ac411cf1c84af1a48a68
BLAKE2b-256 checksum
How to use checksums
4e13665e4610516dcb28aaf1c085ef94dc01da99a813c96491ddd29074b896d9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/46.0.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.8.1

Release history Release notifications | RSS feed

This release

0.5.1 This release

2 release files

0.5.0

2 release files

0.4.5

2 release files

0.4.4

2 release files

0.4.3

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page