A humble collection of HydroShare tools written in Python
Project description
HSTools
A humble collection of HydroShare tools written in Python 3. The hstools
library was originally a port of the CUAHSI JupyterHub utilities.hydroshare
package modified to work on desktop computers. The goal is to provide a set of basic functions that simplify working with HydroShare data.
Libaray Installation
git clone https://github.com/Castronova/hstools.git
cd hstools
python setup.py install
Getting Started
After the libary is installed, it can be executed using the following command: hs
. There are currently 6 options for interacting with HydroShare: get
, add
, create
, delete
, ls
, and init
. For detailed information about any of these add the --help
flag after the options, e.g. $hs get --help
.
$ hs
usage: hs [-h] {get,add,create,delete,ls,init} ...
HSTools is a humble collection of tools for interacting with data in the
HydroShare repository. It wraps the HydroShare REST API to provide simple
commands for working with resources.
positional arguments:
{get,add,create,delete,ls,init}
get Retrieve resource content from HydroShare
add Add files to an existing HydroShare resource
create Create a new HydroShare resource
delete Delete a HydroShare resource
list List HydroShare resources that you own
init Initialize a connection with HydroShare
optional arguments:
-h, --help show this help message and exit
Initialize a Connection to HydroShare
Connect to HydroShare using the init
option. This will create an authentication file for accessing HydroShare that is cached in your $HOME
directory by default. This path can be changed using the -d
flag. Note, this command only needs to be executed once.
$ hs init
Enter HydroShare Username: <username>
Enter HydroShare Password: <password>
Auth saved to: ~/.hs_auth
Create a HydroShare Resource
Create a new HydroShare resource using the create
options.
$ hs create \
-a This is the abstract of my resource \
-t My resource Title \
-k keyword1 keyword2 keyword3 \
-f myfile.txt ./another/file.txt
List HydroShare Resources
Listing HydroShare resources using the ls
options.
$ hs list
List files in long format
$ hs list -l
List the first 17 resources in long format
$ hs list -l -n 17
Filter resources by published
$ hs list -filter published=true
Download a HydroShare Resource
Downloading data from the HydroShare platform is done using globally unique identfiers (GUID). This GUIDs are defined for every HydroShare resource and can be aquired from a resources URL. The get
option downloads the resource bagit archive and unzips it into a directory of your choosing.
$ hs get <hydroshare resource id>
Add Files to a HydroShare Resource
Add files to an existing HydroShare resource using the add
option. This command allows you to optionally overwrite (--overwrite
) files that already exist in a resource, which is helpful when updating content.
$ hs add <hydroshare resource id> -f my-file.txt my-other-file.txt
Deleting a HydroShare Resource
Delete an entire HydroShare resource using the delete
option. This is useful for cleaning up your HydroShare workspace. BEWARE: THIS WILL PERMANENTLY DELETE YOUR HYDROSHARE RESOURCE DATA.
$ hs delete <hydroshare resource id>
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 Distributions
Built Distribution
File details
Details for the file HSTools-0.0.3-py3-none-any.whl
.
File metadata
- Download URL: HSTools-0.0.3-py3-none-any.whl
- Upload date:
- Size: 41.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.4.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 10b01d60de71795a444c6963f2c5bc06830df24f5720d0e07852f7110f9d3388 |
|
MD5 | acbdb64c578c95ee2755327d66ce5bde |
|
BLAKE2b-256 | 08e995b3d94ec23f518ef88adb0723e6ff1c0d4e0aa8083de309a5dd93e8fc6c |