The unofficial API to the TSA Compass membership database
Project description
Compass Interface - Core
The Compass Interface project aims to provide a unified and well-documented API to the Scouts' national membership system, Compass.
Notice
This is not an official API to Compass and as such should be used in a way that doesn't cause a high request load on the Compass system.
Please also remember your personal data handling obligations (under both GDPR and Scouting policies) whilst using this module.
Where to get it
The source code for the project is hosted on GitHub at the-scouts/compass-interface-core
Installers for the latest release are availibe on Conda and at the Python Package Index (PyPI).
# conda
conda install compass-interface-core
# or PyPI
pip install compass-interface-core
Dependencies
- requests - for intuitive HTTP requests
- certifi - for SSL/TLS certificate management
- lxml - for parsing HTML documents
- pandas - for data management and transformation
- pydantic, email-validator, phonenumbers - for data validation and parsing
License
Compass Interface - Core is naturally open source and is licensed under the MIT license.
Core Module
This sub-project hosts the extraction functionaility of Compass Interface, and is itself a standalone module for querying Compass.
The main project is found at the-scouts/compass-interface.
Example Usage
import compass as ci
# Turn on debug logging for development
ci.logging.enable_debug_logging()
# Login to Compass
compass_session = ci.logon(username=..., password=...)
# Setup Compass Helpers
hierarchy = ci.Hierarchy(compass_session)
people = ci.People(compass_session)
# Get all unique members from the in your hierarchy
member_set = hierarchy.get_unique_members()
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for compass-interface-core-0.3.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4842a908b3fafee4e62f6e36329cb74f81cb5b95738be74524c391a33aa52fd4 |
|
MD5 | 9e0b73558b360b61e120505bbfc89f88 |
|
BLAKE2b-256 | 6dfe85a0b85053b7ff8eea0b6fff42239d4e54a41b35a12a67a1dea9b7018187 |
Hashes for compass_interface_core-0.3.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e729c803f66ee305da8bf99a3cb3ac673589cd8d1de3cf57c1504121c786c199 |
|
MD5 | be2189be2be44989b3046be65ef20efd |
|
BLAKE2b-256 | 6387cdbf2578bde3eb33dbccea4389f07453780d130b78488f64c0595853d564 |