habanero
Low Level Client for Crossref Search API
Decision gist · record as of 2026-08-14
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.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- 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.
- Low friction installation with a pure-Python wheel.
License · maintenance · safety
permissive license (permissive) — MIT license (permissive). You can use, modify, and distribute habanero freely in commercial and private projects, with no warranty and minimal attribution requirements.
last release 2026-06-17 (58 days) · last repo commit 2026-07-31 · 251 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 83,189 downloads/mo, #14,096 on PyPI
Alternatives
Verify before relying
pip install habanero
from habanero import Crossref
cr = Crossref()
results = cr.works(query='python')- 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.
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 on it.
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
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.
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.
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')
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 | permissive license permissive |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 4 packageshttpx2packagingtqdmurllib3 |
| 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 |
| Classifiers | 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 |
Evidence: habanero-2.9.2-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “crossref api client”
- habanerohabanero is a low-level Python client for the Crossref search API,…
- codewords-clientA Python client library for the Codewords API with built-in FastAPI…
- twentyc.rpcA client library for consuming 20c's RESTful API, built on top of the…
Give your agent the search over MCP, or paste the wish link into any chat.
More Bio-Informatics packages
NetworkX provides data structures and algorithms for creating, analyzing, and manipulating graphs and networks, supporting everything from simple undirected graphs to complex directed and weighted networks.
Biopython provides Python tools for computational molecular biology, including sequence analysis, structure parsing, database access, and phylogenetic tree manipulation.
However, verify that the custom Biopython License Agreement aligns with your project's licensing requirements before committing to it in production or proprietary work.
Client library for the Firecrawl API that scrapes, crawls, and searches the web, returning clean Markdown or structured data; also indexes research papers from PubMed, bioRxiv, medRxiv, and arXiv.
A self-balancing interval tree data structure that stores and queries overlapping or enveloped ranges, supporting point lookups, range overlaps, and range envelopment queries.
Install it if you need to store and query overlapping or enveloped ranges; the self-balancing design and rich query interface make it significantly easier than…
Albumentations applies image transformations to training data, supporting classification, segmentation, object detection, and pose estimation with a unified API for images, masks, bounding boxes, and keypoints.
Install it if you need a unified, production-grade augmentation API for computer vision tasks.
PubChemPy is a Python wrapper around the PubChem REST API that lets you search for chemical compounds by name, substructure, or similarity, retrieve their properties, and convert between chemical file formats.
Install it if you need programmatic access to PubChem data.
See also pyzotero · scholarly · bibtexparser · pymarc · lexisnexisapi · isbnlib · pystac-ext-scientific · wikipedia-mcp · pyalex · semanticscholar