A Python library to interact with ASTR servers.
Project description
# lib-python-astr
[![PyPI version](https://badge.fury.io/py/libastr.svg)](https://badge.fury.io/py/libastr)
[![License: MPL 2.0](https://img.shields.io/badge/License-MPL%202.0-brightgreen.svg)](https://opensource.org/licenses/MPL-2.0)
This Source Code Form is subject to the terms of the Mozilla Public
License, v. 2.0. If a copy of the MPL was not distributed with this
file, You can obtain one at http://mozilla.org/MPL/2.0/.
### Purpose
Libastr is a **Python3** library designed to ease python scripting with
the API of A.S.T.R. (Archiving System Truly RESTful).
It includes multiple features like browsing, downloading and uploading archives.
### Installation
1. Git clone the repository.
2. Install the library with pip. It is advised to use
[virtualenv](http://virtualenvwrapper.readthedocs.io/en/latest/):
```
pip install lib-python-astr
```
### Configuration
To communicate with the ASTR server, three parameters must be given to the
an instance of the class `AstrClient`:
* base_url: ASTR instance base url (e.g. http://my-astr-server:8000)
* email: a user email
* token: a token of this user (to be generated on the website)
```python
from libastr import AstrClient
client = AstrClient(base_url, email, token)
```
Or, to avoid giving all these parameters manually, they can be stored in
environment variables:
```
export LIBASTR_URL='http://my-astr-server:8000'
export LIBASTR_EMAIL='john.doe@my-email.com'
export LIBASTR_TOKEN='b4b71bf6-a3dd-4975-85b8-03de05096fc0'
```
Then, if you make an instance of `AstrClient` without giving arguments, it
will fetch these environment variables by default.
### Basic usage
```python
from libastr import Browser
# If you use environment variables to connect to the server...
browser = Browser()
# Or if yo use custom variables...
from libastr import AstrClient
client = AstrClient(base_url, email, token)
browser = Browser(client)
# Retrieve some archives
my_archives = browser.get_archives_by_args(
author="John DOE",
category="MY CATEGORY",
descriptors={"my_desc": "MY VALUE"})
# download an archive
my_archives[0].download(local_path="/home/john.doe/Documents/")
# Retrieve all categories
cat = browser.get_all_archive_categories()
# Get descriptors of one category
cat[0].get_descriptors()
```
[![PyPI version](https://badge.fury.io/py/libastr.svg)](https://badge.fury.io/py/libastr)
[![License: MPL 2.0](https://img.shields.io/badge/License-MPL%202.0-brightgreen.svg)](https://opensource.org/licenses/MPL-2.0)
This Source Code Form is subject to the terms of the Mozilla Public
License, v. 2.0. If a copy of the MPL was not distributed with this
file, You can obtain one at http://mozilla.org/MPL/2.0/.
### Purpose
Libastr is a **Python3** library designed to ease python scripting with
the API of A.S.T.R. (Archiving System Truly RESTful).
It includes multiple features like browsing, downloading and uploading archives.
### Installation
1. Git clone the repository.
2. Install the library with pip. It is advised to use
[virtualenv](http://virtualenvwrapper.readthedocs.io/en/latest/):
```
pip install lib-python-astr
```
### Configuration
To communicate with the ASTR server, three parameters must be given to the
an instance of the class `AstrClient`:
* base_url: ASTR instance base url (e.g. http://my-astr-server:8000)
* email: a user email
* token: a token of this user (to be generated on the website)
```python
from libastr import AstrClient
client = AstrClient(base_url, email, token)
```
Or, to avoid giving all these parameters manually, they can be stored in
environment variables:
```
export LIBASTR_URL='http://my-astr-server:8000'
export LIBASTR_EMAIL='john.doe@my-email.com'
export LIBASTR_TOKEN='b4b71bf6-a3dd-4975-85b8-03de05096fc0'
```
Then, if you make an instance of `AstrClient` without giving arguments, it
will fetch these environment variables by default.
### Basic usage
```python
from libastr import Browser
# If you use environment variables to connect to the server...
browser = Browser()
# Or if yo use custom variables...
from libastr import AstrClient
client = AstrClient(base_url, email, token)
browser = Browser(client)
# Retrieve some archives
my_archives = browser.get_archives_by_args(
author="John DOE",
category="MY CATEGORY",
descriptors={"my_desc": "MY VALUE"})
# download an archive
my_archives[0].download(local_path="/home/john.doe/Documents/")
# Retrieve all categories
cat = browser.get_all_archive_categories()
# Get descriptors of one category
cat[0].get_descriptors()
```
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
libastr-1.1.0.tar.gz
(8.5 kB
view details)
Built Distribution
libastr-1.1.0-py3-none-any.whl
(10.6 kB
view details)
File details
Details for the file libastr-1.1.0.tar.gz
.
File metadata
- Download URL: libastr-1.1.0.tar.gz
- Upload date:
- Size: 8.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.9.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.5.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 458331c0ba7f50cb4bcf52a1f12553d3c6f085ad35cfed43b070605b8b51a328 |
|
MD5 | 7ed91857e0020cca4640d1187d0fe892 |
|
BLAKE2b-256 | 7e6b374fef3dbf453dcd69fcc068f35ef5e6365027eb22b3c27d25568fa17148 |
File details
Details for the file libastr-1.1.0-py3-none-any.whl
.
File metadata
- Download URL: libastr-1.1.0-py3-none-any.whl
- Upload date:
- Size: 10.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.9.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.25.0 CPython/3.5.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | adcb80d352f0d765acb74941f6f9e7879ffefaede2b4e7fc087b2239b07b156f |
|
MD5 | 2efbaab83a6c03f1ef80941c6578e782 |
|
BLAKE2b-256 | 57b0b578bae3b0c8c6c8bf4f355d36ef100e90f5abfbb98e976cb34cd174d914 |