pyobis

Fetch data from OBIS API which harvests occurrence records from thousands of datasets and makes them available as a single integrated dataset.
https://github.com/iobis/pyobis

Category: Biosphere
Sub Category: Biodiversity Data Access and Management

Keywords

marine-data oceanography python

Keywords from Contributors

climate marine-biology

Last synced: about 15 hours ago
JSON representation

Repository metadata

OBIS Python client

README.md

pyobis

pypi
Conda Version
docs
tests

Python client for the OBIS API.

Source on GitHub at iobis/pyobis

Try it out:

Open In Collab

What is it?

Pyobis is an interesting python package that helps users fetch data from OBIS API which
harvests occurrence records from thousands of datasets and makes them available as a
single integrated dataset.

The Ocean Biodiversity Information System (OBIS) is a global open-access data and
information clearing-house on marine biodiversity for science, conservation, and sustainable
development, maintained by IOOS.

Other OBIS clients:

Main Features

Here are just a few of things pyOBIS can do:

  • Easy handling of OBIS data, easy fetching without handling the raw API response directly.
  • Built-in functions for occurrence, taxon, node, checklist and dataset endpoints of OBIS API.
  • Provides easy export of data to Pandas DataFrame, and helps researchers focus more on analysis rather than data mining.

For examples of how to use this repo, see the jupyter notebooks in the /notebooks/ directory.
NOTE: GitHub's jupyter notebook display does not show interactive plots; open the notebooks in a jupyter hub (eg colab, binder, etc) for the full experience.

Installation

Install from PyPI

pip install pyobis

Install from conda-forge

Installing pyobis from the conda-forge channel can be achieved by adding conda-forge to your channels with:

conda install pyobis --channel conda-forge

More information here

Usage

from pyobis import occurrences

# Search for occurrences
query = occurrences.search(scientificname="Mola mola")
data = query.execute()

# Get occurrence by ID
query = occurrences.get(id="00003cf7-f2fc-4c53-98a6-7d846e70f5d1")
data = query.execute()

Documentation

For more information, see the documentation.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.

Library API

pyobis is split up into modules for each of the groups of API methods.

  • checklist - Checklist. Generate a checklist of species under a taxa, IUCN Red List, or most recently added species.
  • dataset - Dataset. Get metadata of datasets (including datasetid, owner, institution, number of records, etc) for a queried spatiotemporal region or taxa.
  • nodes - Nodes. Get records or activities for an OBIS node.
  • occurrences - Occurrence. Fetch occurrence records, geopoints, lookup for a scientificname, extensions (e.g. DNADerivedData, MeasurementOrFacts, etc.)
  • taxa - Taxonomic names. Get taxon records with taxonid or scientificname, and scientific name annotations by the WoRMS team.

You can import the entire library, or each module individually as needed.

Usage Guide

For a detailed usage guide with information about inputs, output and module functions please read the Usage Guide

Sample analysis

Some Jupyter Notebook based sample analysis and visualization of data grabbed through pyobis have been made available through /notebooks/ directory.
To get full experience of the interactive plots (eg. geoplots, etc) please open notebooks in a Jupyter Hub (eg. through Google Colab, Binder, local installation, etc.)

Meta

Further Reading

  • In case you face data quality issues, please look at OBIS QC repo
  • For issues with the package itself, feel free to open an issue here!

Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 6 days ago

Total Commits: 555
Total Committers: 12
Avg Commits per committer: 46.25
Development Distribution Score (DDS): 0.476

Commits in past year: 114
Committers in past year: 7
Avg Commits per committer in past year: 16.286
Development Distribution Score (DDS) in past year: 0.5

Name Email Commits
ayushanand18 k****0@g****m 291
MehrazRumman s****4@g****m 57
Tylar e****l@t****o 54
pre-commit-ci[bot] 6****] 45
Filipe Fernandes o****f@g****m 35
Scott Chamberlain m****s@g****m 27
dependabot[bot] 4****] 22
7yl4r g****t@t****o 11
AnshulBaljapalli 1****i 7
Dolapo Olatoye d****m@g****m 3
Pushkar Verma 5****2 2
theayushanand 1

Committer domains:


Issue and Pull Request metadata

Last synced: 6 days ago

Total issues: 50
Total pull requests: 152
Average time to close issues: about 2 months
Average time to close pull requests: 5 days
Total issue authors: 10
Total pull request authors: 8
Average comments per issue: 3.9
Average comments per pull request: 1.31
Merged pull request: 133
Bot issues: 1
Bot pull requests: 80

Past year issues: 6
Past year pull requests: 22
Past year average time to close issues: 3 months
Past year average time to close pull requests: 2 days
Past year issue authors: 4
Past year pull request authors: 6
Past year average comments per issue: 2.0
Past year average comments per pull request: 1.09
Past year merged pull request: 17
Past year bot issues: 0
Past year bot pull requests: 14

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/iobis/pyobis

Top Issue Authors

  • 7yl4r (21)
  • MathewBiddle (13)
  • ayushanand18 (8)
  • ocefpaf (2)
  • MehrazRumman (1)
  • bbest (1)
  • begidazu (1)
  • pieterprovoost (1)
  • dependabot[bot] (1)
  • Ei3-kw (1)

Top Pull Request Authors

  • pre-commit-ci[bot] (46)
  • ayushanand18 (45)
  • dependabot[bot] (34)
  • ocefpaf (10)
  • 7yl4r (10)
  • MehrazRumman (4)
  • DolapoSalim (2)
  • BALJAPALLIANSHUL (1)

Top Issue Labels

  • enhancement (15)
  • discussion needed (6)
  • report to OBIS database (3)
  • user applications (2)
  • bug (1)

Top Pull Request Labels

  • Bot (28)
  • hacktoberfest-accepted (5)
  • help wanted (2)
  • discussion needed (1)
  • enhancement (1)

Package metadata

pypi.org: pyobis

Python client for OBIS

  • Homepage: https://github.com/iobis/pyobis
  • Documentation: https://iobis.github.io/pyobis
  • Licenses: MIT
  • Latest release: 1.6.1 (published 8 months ago)
  • Last Synced: 2026-04-21T16:03:47.770Z (21 days ago)
  • Versions: 9
  • Dependent Packages: 0
  • Dependent Repositories: 2
  • Downloads: 218 Last month
  • Rankings:
    • Dependent packages count: 10.103%
    • Forks count: 11.411%
    • Dependent repos count: 11.558%
    • Average: 15.793%
    • Stargazers count: 16.074%
    • Downloads: 29.819%
  • Maintainers (3)
conda-forge.org: pyobis

  • Homepage: https://github.com/iobis/pyobis
  • Licenses: MIT
  • Latest release: 1.2.6 (published over 3 years ago)
  • Last Synced: 2026-03-22T00:18:36.353Z (about 2 months ago)
  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 11,605 Total
  • Rankings:
    • Dependent repos count: 24.397%
    • Average: 44.458%
    • Forks count: 47.542%
    • Dependent packages count: 51.594%
    • Stargazers count: 54.299%

Dependencies

.github/workflows/deploy-docs.yml actions
  • actions/checkout v3 composite
  • mamba-org/provision-with-micromamba v14 composite
  • peaceiris/actions-gh-pages v3 composite
.github/workflows/pypi.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • pypa/gh-action-pypi-publish v1.5.1 composite
.github/workflows/tests.yml actions
  • actions/checkout v3 composite
  • mamba-org/provision-with-micromamba v14 composite
requirements-dev.txt pypi
  • black * development
  • check-manifest * development
  • flake8 * development
  • flake8-builtins * development
  • flake8-comprehensions * development
  • flake8-mutable * development
  • flake8-print * development
  • interrogate * development
  • isort * development
  • nbsphinx * development
  • pre-commit * development
  • pydocstyle * development
  • pylint * development
  • pytest * development
  • pytest-cov * development
  • pytest-flake8 * development
  • pytest-sugar * development
  • pytest-xdist * development
  • setuptools_scm * development
  • sphinx * development
  • sphinx_rtd_theme * development
  • twine * development
  • wheel * development
requirements.txt pypi
  • pandas *
  • requests >=2.7
pyproject.toml pypi
setup.py pypi

Score: 15.576788139038046