pyzotero

Pyzotero: a Python client for the Zotero API

https://github.com/urschrei/pyzotero

Science Score: 77.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 2 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
    4 of 32 committers (12.5%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (17.8%) to scientific vocabulary

Keywords

citations digital-humanities zotero

Keywords from Contributors

mesh interpretability transformers cryptocurrencies sequences projection interactive hacking yolov5 network-simulation
Last synced: 6 months ago · JSON representation ·

Repository

Pyzotero: a Python client for the Zotero API

Basic Info
Statistics
  • Stars: 1,049
  • Watchers: 19
  • Forks: 112
  • Open Issues: 17
  • Releases: 33
Topics
citations digital-humanities zotero
Created almost 15 years ago · Last pushed 8 months ago
Metadata Files
Readme Contributing License Citation Authors

README.md

Supported Python versions Docs PyPI Version Anaconda-Server Badge Downloads

Pyzotero: An API Client for the Zotero API

Quickstart

  1. pip install pyzotero or conda config --add channels conda-forge && conda install pyzotero
  2. You'll need the ID of the personal or group library you want to access:
    • Your personal library ID is available here, in the section Your userID for use in API calls
    • For group libraries, the ID can be found by opening the group's page: https://www.zotero.org/groups/groupname, and hovering over the group settings link. The ID is the integer after /groups/
  3. You'll also need to get an API key here
  4. Are you accessing your own Zotero library? library_type is 'user'
  5. Are you accessing a shared group library? library_type is 'group'.

Then:

``` python from pyzotero import zotero zot = zotero.Zotero(libraryid, librarytype, api_key) # local=True for read access to local Zotero items = zot.top(limit=5)

we've retrieved the latest five top-level items in our library

we can print each item's item type and ID

for item in items: print('Item: %s | Key: %s' % (item['data']['itemType'], item['data']['key'])) ```

Documentation

Full documentation of available Pyzotero methods, code examples, and sample output is available on Read The Docs.

Installation

  • Using pip: pip install pyzotero (it's available as a wheel, and is tested on Python 3.7 and up)
  • Using Anaconda:conda config --add channels conda-forge && conda install pyzotero
  • From a local clone, if you wish to install Pyzotero from a specific branch:

Example:

bash git clone git://github.com/urschrei/pyzotero.git cd pyzotero git checkout main pip install .

Testing

Run pytest . from the top-level directory.

Issues

The latest commits can be found on the main branch, although new features are currently rare. If you encounter an error, please open an issue.

Pull Requests

Pull requests are welcomed. Please read the contribution guidelines. In particular, please base your PR on the dev branch.

Versioning

As of v1.0.0, Pyzotero is versioned according to Semver; version increments are performed as follows:

  1. MAJOR version will increment with incompatible API changes,
  2. MINOR version will increment when functionality is added in a backwards-compatible manner, and
  3. PATCH version will increment with backwards-compatible bug fixes.

Citation

Pyzotero has a DOI:
DOI
You may also cite Pyzotero using CITATION.cff.
A sample citation (APA 6th edition) might look like:

Stephan Hügel, The Pyzotero Authors (2019, May 18). urschrei/pyzotero: Version v1.3.15. http://doi.org/10.5281/zenodo.2917290

License

Pyzotero is licensed under the Blue Oak Model Licence 1.0.0. See LICENSE.md for details.

† This isn't strictly true: you only need an API key for personal libraries and non-public group libraries.

Owner

  • Name: Stephan Hügel
  • Login: urschrei
  • Kind: user
  • Location: Dublin
  • Company: Trinity College Dublin

Marie Curie research fellow at TCD: smart cities and climate change. Prev: @casa-ucl. I also work on high-performance computational geometry libraries @georust

Citation (CITATION.cff)

cff-version: 1.1.0
message: "If you use this software, please cite it using these metadata."
abstract: "Pyzotero: a Python client for the Zotero API"
authors: 
  -
    family-names: "Hügel"
    given-names: Stephan
    orcid: "https://orcid.org/0000-0003-4379-2450"
title: "Pyzotero"
date-released: 2019-05-18
doi: "10.5281/zenodo.2917290"
keywords: 
  - zotero
license: BlueOak-1.0.0
repository-code: "https://github.com/urschrei/pyzotero"
version: "1.3.15"

GitHub Events

Total
  • Create event: 31
  • Release event: 13
  • Issues event: 24
  • Watch event: 166
  • Delete event: 19
  • Issue comment event: 54
  • Push event: 95
  • Pull request review event: 1
  • Pull request event: 41
  • Fork event: 20
Last Year
  • Create event: 31
  • Release event: 13
  • Issues event: 24
  • Watch event: 166
  • Delete event: 19
  • Issue comment event: 54
  • Push event: 95
  • Pull request review event: 1
  • Pull request event: 41
  • Fork event: 20

Committers

Last synced: 9 months ago

All Time
  • Total Commits: 1,217
  • Total Committers: 32
  • Avg Commits per committer: 38.031
  • Development Distribution Score (DDS): 0.065
Past Year
  • Commits: 124
  • Committers: 7
  • Avg Commits per committer: 17.714
  • Development Distribution Score (DDS): 0.161
Top Committers
Name Email Commits
Stephan Hügel u****i@g****m 1,138
dependabot[bot] 4****] 16
Peter Gerdes g****s@i****g 13
Miguel Paolino m****o@d****o 10
Patrick Fournier p****k@w****m 4
Dan Sheridan d****s@a****m 3
Tao Zhang f****g@1****m 3
David Lesieur d****d@d****m 3
sbristol@usgs.gov s****l@u****v 2
denest c****o@g****m 2
Patrick Golden p****0@g****m 2
Christian Brodbeck c****k@g****m 1
Erik Hetzner e****h@e****g 1
Andrea Huber a****r@t****e 1
tzhang t****v@o****m 1
lsth a****a@s****m 1
Yong Wen Chua y****n@l****t 1
Mickaël Desfrênes m****s@u****r 1
Merlin m****k@g****m 1
Florian Magin f****n 1
Nigel Bosch p****b@g****m 1
Pablo Orduña p****a@d****s 1
Sean Takats s****n@t****g 1
Stefan Frühwirth s****h@u****t 1
Tom Najdek t****m@d****m 1
ba_tno 5****o 1
jghauser j****n@j****m 1
mrbiber m****r 1
Aarni Koskela a****x@i****i 1
Allen Lee a****e@a****u 1
and 2 more...

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 106
  • Total pull requests: 66
  • Average time to close issues: about 2 months
  • Average time to close pull requests: 14 days
  • Total issue authors: 85
  • Total pull request authors: 25
  • Average comments per issue: 2.95
  • Average comments per pull request: 1.12
  • Merged pull requests: 50
  • Bot issues: 0
  • Bot pull requests: 11
Past Year
  • Issues: 16
  • Pull requests: 40
  • Average time to close issues: 8 days
  • Average time to close pull requests: about 18 hours
  • Issue authors: 14
  • Pull request authors: 9
  • Average comments per issue: 2.31
  • Average comments per pull request: 0.3
  • Merged pull requests: 34
  • Bot issues: 0
  • Bot pull requests: 7
Top Authors
Issue Authors
  • fabbra (5)
  • bjohas (4)
  • Mjvolk3 (3)
  • moorepants (2)
  • MerlinB (2)
  • davidswelt (2)
  • michi-zuri (2)
  • gyger (2)
  • stakats (2)
  • thiswillbeyourgithub (2)
  • Michael-N-N (2)
  • mgorny (2)
  • JorrisonFord (2)
  • beastraban (2)
  • xwzliang (2)
Pull Request Authors
  • urschrei (24)
  • dependabot[bot] (21)
  • forrestzhang (4)
  • TruePath (3)
  • davidlesieur (2)
  • tnajdek (2)
  • liangmaomaomao (2)
  • tzhang-dev (2)
  • andreahuber (2)
  • pnb (2)
  • johndoe46 (2)
  • thiswillbeyourgithub (2)
  • fmagin (1)
  • michi-zuri (1)
  • skybristol (1)
Top Labels
Issue Labels
Pull Request Labels
dependencies (21) github_actions (21)

Packages

  • Total packages: 3
  • Total downloads:
    • pypi 120,628 last-month
  • Total dependent packages: 16
    (may contain duplicates)
  • Total dependent repositories: 66
    (may contain duplicates)
  • Total versions: 292
  • Total maintainers: 1
pypi.org: pyzotero

Python wrapper for the Zotero API

  • Documentation: https://pyzotero.readthedocs.io/
  • License: # Blue Oak Model License Version 1.0.0 ## Purpose This license gives everyone as much permission to work with this software as possible, while protecting contributors from liability. ## Acceptance In order to receive this license, you must agree to its rules. The rules of this license are both obligations under that agreement and conditions to your license. You must not do anything with this software that triggers a rule that you cannot or will not follow. ## Copyright Each contributor licenses you to do everything with this software that would otherwise infringe that contributor's copyright in it. ## Notices You must ensure that everyone who gets a copy of any part of this software from you, with or without changes, also gets the text of this license or a link to <https://blueoakcouncil.org/license/1.0.0>. ## Excuse If anyone notifies you in writing that you have not complied with [Notices](#notices), you can keep your license by taking all practical steps to comply within 30 days after the notice. If you do not do so, your license ends immediately. ## Patent Each contributor licenses you to do everything with this software that would otherwise infringe any patent claims they can license or become able to license. ## Reliability No contributor can revoke this license. ## No Liability ***As far as the law allows, this software comes as is, without any warranty or condition, and no contributor will be liable to anyone for any damages related to this software or this license, under any kind of legal claim.***
  • Latest release: 1.6.11
    published 11 months ago
  • Versions: 112
  • Dependent Packages: 16
  • Dependent Repositories: 64
  • Downloads: 120,628 Last month
Rankings
Dependent packages count: 0.9%
Dependent repos count: 1.9%
Downloads: 2.1%
Stargazers count: 2.4%
Average: 2.4%
Forks count: 4.8%
Maintainers (1)
Last synced: 6 months ago
proxy.golang.org: github.com/urschrei/pyzotero
  • Versions: 152
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Stargazers count: 2.3%
Forks count: 2.8%
Average: 6.4%
Dependent packages count: 9.6%
Dependent repos count: 10.8%
Last synced: 7 months ago
conda-forge.org: pyzotero
  • Versions: 28
  • Dependent Packages: 0
  • Dependent Repositories: 2
Rankings
Stargazers count: 16.2%
Dependent repos count: 20.2%
Forks count: 20.4%
Average: 27.1%
Dependent packages count: 51.6%
Last synced: 6 months ago

Dependencies

.github/workflows/tests.yml actions
  • AndreMiras/coveralls-python-action develop composite
  • actions/checkout v3 composite
  • actions/setup-python v3 composite
pyproject.toml pypi
  • bibtexparser *
  • feedparser >= 6
  • pytz *
  • requests >= 2.21.0
setup.py pypi