Programmatically access the Atlas RFP interface
Project description
atlas-rfp
Rationale
MIT's reimbursement system is aging. Having a high-performance, statically-typed interface to the RFP system enables higher-level financial scripts and programs to be created.
This script uses touchstone-auth
, another one of my Python packages that is
a Python user-agent capable of properly two-factor authenticating your scripts,
without requiring a browser.
Install
This package is on Pip, so you can just:
pip install atlas-rfp
Alternatively, you can get built wheels from the Releases tab on Github.
Quickstart
To perform Touchstone authentication, we need a client-side certificate.
Remember to not hard-code your credentials!
The example here loads credentials from a json file called credentials.json
:
{
"certfile": "some_client_credential.p12",
"password": "horse-battery-staple-correct"
}
Then, in your Python file, you can do the following:
import json
from touchstone_auth import TouchstoneSession
with open('credentials.json') as cred_file:
credentials = json.load(cred_file)
with TouchstoneSession(
base_url='https://atlas.mit.edu',
pkcs12_filename=credentials['certfile'],
pkcs12_pass=credentials['password'],
cookiejar_filename='cookies.pickle') as s:
response = s.get('https://atlas.mit.edu/atlas/Main.action')
For more examples on how to authenticate, see the touchstone-auth documentation.
Complete Examples
Developer install
If you'd like to hack locally on atlas-rfp
, after cloning this repository:
$ git clone https://github.com/meson800/atlas-rfp.git
$ cd git
you can create a local virtual environment, and install atlas-rfp
in "development mode"
$ python -m venv env
$ .\env\Scripts\activate (on Windows)
$ source env/bin/activate (on Mac/Linux)
$ pip install -e .
After this 'local install', you can use and import atlas-rfp
freely without
having to re-install after each update.
Changelog
See the CHANGELOG for detailed changes.
## [0.0.1] - 2023-01-20
### Added
- Added initial parsing of RFP search results and detail pages.
License
This is licensed by the MIT license. Use freely!
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 atlas_rfp-0.0.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2e1eaecb074c0c2960e95b7f3491b2d87976e7c3303ba5407bc8f179486111d0 |
|
MD5 | fa61b3fd9f461d29febcefe64052f7cc |
|
BLAKE2b-256 | ef0af9f0ef354b2ded2eecaf69cf3a956b514fb17f57246382a4b3127a9cf68f |