get-bibtex
A Python tool for fetching citations from multiple sources.
Features
- Multiple data sources (CrossRef, DBLP, Google Scholar)
- Smart workflow and fallback mechanism
- Batch processing
- Detailed error handling and logging
Quick Start
Installation
pip install get-bibtex
Basic Usage
from apiModels import CrossRefBibTeX
# Using CrossRef
fetcher = CrossRefBibTeX(email="your.email@example.com")
bibtex = fetcher.get_bibtex("10.3390/s22197244") # FedMSA paper
print(bibtex)
Using Workflow
from apiModels import WorkflowBuilder, CrossRefBibTeX, DBLPBibTeX
# Create workflow
workflow = WorkflowBuilder()
workflow.add_fetcher(CrossRefBibTeX(email="your.email@example.com"))
workflow.add_fetcher(DBLPBibTeX())
# Batch processing
queries = [
"ECA-Net: Efficient Channel Attention for Deep Convolutional Neural Networks",
"CBAM: Convolutional Block Attention Module"
]
results = workflow.get_multiple_bibtex(queries)
Using Google Scholar
Getting SerpAPI Key
- Visit SerpAPI and sign up
- Get API key from Dashboard
- Initialize Google Scholar fetcher with API key
from apiModels import GoogleScholarBibTeX
fetcher = GoogleScholarBibTeX(api_key="your-serpapi-key")
bibtex = fetcher.get_bibtex("Attention Is All You Need")
print(bibtex)
Notes
- Free plan limited to 100 searches per month
- Use environment variables for API key
- Prefer CrossRef and DBLP when possible
Examples
Fetching Attention Mechanism Papers
from apiModels import CrossRefBibTeX
fetcher = CrossRefBibTeX(email="your.email@example.com")
# Get ECA-Net paper citation
bibtex = fetcher.get_bibtex("10.1109/cvpr42600.2020.01155")
print(bibtex)
File Processing
from apiModels import WorkflowBuilder
workflow = WorkflowBuilder()
workflow.add_fetcher(CrossRefBibTeX(email="your.email@example.com"))
workflow.add_fetcher(DBLPBibTeX())
# Read queries from file and save results
workflow.process_file("papers.txt", "references.bib")
Documentation
For detailed documentation, see blog_cn.md
Contributing
Pull requests and issues are welcome!
License
MIT
Release files for get-bibtex 2.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| get_bibtex-2.0.1.tar.gz | 13.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| get_bibtex-2.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 28.1 kB
Release files / get_bibtex-2.0.1.tar.gz
| Download URL | get_bibtex-2.0.1.tar.gz |
|---|---|
| Size | 13.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2e9bfce29555e7418cb12a8abb7ac25968367a3edf686672249489531d4a8b4d
|
|
BLAKE2b-256 checksum How to use checksums |
733c1c9aabf2917f43ed9cdaba91ad1258ba036681931a761480b64091e30359
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.6.14
|
Release files / get_bibtex-2.0.1-py3-none-any.whl
| Download URL | get_bibtex-2.0.1-py3-none-any.whl |
|---|---|
| Size | 14.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
97f65853ca5ed8c6689d772c5a1a4f11392db5dd3d3e92c8c87ea791618a94ed
|
|
BLAKE2b-256 checksum How to use checksums |
9dd51d5baaf9517da6b58c51d48c0d113da6c8d25e09c3cc1480838e3eecc464
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.6.14
|