Pure Python wrapper for Zenodo REST API.
Allows upload / download of data from Zenodo.
python -m pip install pyzenodo3
pip install -e pyzenodo3
Here are several examples of using Zenodo from Python 3. All of them assume you have first:
import pyzenodo3 zen = pyzenodo3.Zenodo()
Upload file to Zenodo
Get a Zenodo
deposit:writeAPI Token. This token must remain private, NOT uploaded to GitHub, etc.!
create a simple text file
mymeta.inicontaining title, author etc. (see the example
meta.iniin this repo)
upload file to Zenodo (myApiToken is the cut-n-pasted Zenodo API text token)
./upload_zenodo.py myApiToken mymeta.ini myfile.zip
Find Zenodo record by Github repo
Rec = zen.find_record__by_github_repo('scivision/lowtran')
This Zenodo Record contains the metadata that can be further manipulated in a simple class containing the data in dictionaries, with a few future helper methods.
Find Zenodo records by Github username
Recs = zen.search('scivision')
Recs is a
list of Zenodo Records for the GitHub username queried, as in the example above.
- We don't use
deposit:publishAPI token to keep a human-in-the-loop in case of hacking of sensor nodes.