skillfed

habanero

Low Level Client for Crossref Search API

habanero v2.9.2 83.2K downloads/30d#14,096 on PyPI251
Permissive license Copyright (C) 2025 Scott Chamberlain Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the… (full text in the JSON record) Active released

What it is and what it does

habanero wraps Crossref's HTTP search API into a Python client, letting you query bibliographic metadata—article titles, authors, publication dates, DOIs—without building HTTP requests by hand. It's designed as a low-level interface, meaning it stays close to the API's structure rather than adding high-level abstractions; you work directly with the data Crossref returns.

The package depends on httpx2 for HTTP transport, urllib3 as a fallback, tqdm for progress indication in bulk operations, and packaging for version handling. It supports Python 3.10 through 3.14 and has been in active development since 2015. An optional bibtexparser dependency (version 2.0.0b7 or later) is available for fixing bibtex-formatted citations via content negotiation, installed separately with the [bibtex] extra.

Use it for:

  • Search Crossref's publication database by title, author, or DOI to retrieve structured metadata for research tools or literature review automation.
  • Build a bibliographic index or reference management system that pulls live data from Crossref rather than maintaining a static database.
  • Integrate publication metadata into a research workflow, such as fetching article details to populate a knowledge base or citation graph.
  • Retrieve DOI metadata programmatically to validate or enrich citation data in academic publishing platforms.
  • Batch-query Crossref for metadata on multiple publications, using tqdm progress tracking for long-running operations.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

habanero is a low-level Python client for the Crossref search API, enabling programmatic access to bibliographic metadata and publication data from Crossref's database.

Yes. habanero is actively maintained, has low install friction, carries no known vulnerabilities, and is licensed permissively under MIT. It's the natural choice if you need direct, low-level access to Crossref's search API from Python. Install it if you're building tools that query bibliographic data; skip it only if you need a higher-level abstraction or don't need Crossref's specific data.

Install

habanero on PyPI

pip

pip install habanero

uv

uv add habanero

poetry

poetry add habanero

Installing habanero

Before you install

Low friction installation with a pure-Python wheel. Actively maintained with a recent release; last commit 2026-07-31 and status marked active. Depends on four common libraries: httpx2, packaging, tqdm, and urllib3.

License in practice

MIT license (permissive). You can use, modify, and distribute habanero freely in commercial and private projects, with no warranty and minimal attribution requirements.

Quickstart

pip install habanero

from habanero import Crossref

cr = Crossref()
results = cr.works(query='python')

Requires Python 3.10 or later. API access requires an internet connection; consider including a mailto parameter in requests to join Crossref's polite pool for better rate limits.

Verify before relying

  • Whether rate limiting behavior differs meaningfully between requests with and without a mailto parameter in practice.
  • Performance characteristics when handling large result sets or concurrent requests.
  • Whether the optional bibtexparser dependency is commonly needed or rarely used.

Package facts

License Copyright (C) 2025 Scott Chamberlain Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the… (full text in the JSON record) (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 4 — httpx2, packaging, tqdm, urllib3
Maintenance actively maintained — 58 days since the last release
Last repo commit
First released
Downloads 83,189/month — #14,096 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: habanero-2.9.2-py3-none-any.whl

Development Status :: 5 - Production/StableIntended Audience :: DevelopersIntended Audience :: Science/ResearchLicense :: OSI Approved :: MIT LicenseNatural Language :: EnglishProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: Scientific/Engineering :: Bio-Informatics

Tags

crossref api clientbibliographic metadata searchpublication data retrievalcrossref search pythonscholarly article metadatadoi lookup clientcrossref query library
bibliographic-dataapi-clientscholarly-publishing

More Bio-Informatics packages