Lightweight metadata lookup for scientific papers
Project description
acatome-meta
Lightweight metadata lookup and verification for scientific papers. Resolves PDFs to their DOI, title, authors, and journal using Crossref and Semantic Scholar.
Features
- PDF title extraction — extracts candidate titles from PDF first pages
- Crossref lookup — DOI resolution and metadata retrieval
- Semantic Scholar — citation counts, abstracts, and supplementary metadata
- Fuzzy verification — confirms extracted metadata matches the PDF content
- Citation parsing — extracts structured author/year/title from reference strings
- Zero-config — works out of the box, optional API keys for higher rate limits
Installation
uv pip install -e .
Usage
from acatome_meta import lookup
meta = lookup("/path/to/paper.pdf")
print(meta["doi"], meta["title"], meta["authors"])
CLI
acatome-meta lookup paper.pdf
acatome-meta verify paper.pdf --doi 10.1234/example
Configuration
Set SEMANTIC_SCHOLAR_API_KEY for higher rate limits:
export SEMANTIC_SCHOLAR_API_KEY=your_key_here
Testing
uv run python -m pytest tests/ -v
License
LGPL-3.0-or-later — see LICENSE.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file acatome_meta-0.3.3.tar.gz.
File metadata
- Download URL: acatome_meta-0.3.3.tar.gz
- Upload date:
- Size: 19.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4aef0334369926f77dc19d33c28e2d4905f7d6fc6335f49719096cf9c414d840
|
|
| MD5 |
7fee7efd00fb3db5502a843da85726e7
|
|
| BLAKE2b-256 |
22fb6f781576934e6753d9bad6c25dc88e6d91e5a7e100094c5412e2cd9e91ae
|
Provenance
The following attestation bundles were made for acatome_meta-0.3.3.tar.gz:
Publisher:
publish.yml on retospect/acatome-meta
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
acatome_meta-0.3.3.tar.gz -
Subject digest:
4aef0334369926f77dc19d33c28e2d4905f7d6fc6335f49719096cf9c414d840 - Sigstore transparency entry: 1247272959
- Sigstore integration time:
-
Permalink:
retospect/acatome-meta@b66da4112e485d02f6e8210b9814d77801373b6b -
Branch / Tag:
refs/tags/v0.3.3 - Owner: https://github.com/retospect
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@b66da4112e485d02f6e8210b9814d77801373b6b -
Trigger Event:
push
-
Statement type:
File details
Details for the file acatome_meta-0.3.3-py3-none-any.whl.
File metadata
- Download URL: acatome_meta-0.3.3-py3-none-any.whl
- Upload date:
- Size: 14.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5a6df9f8998b1e83ffef6fcc6909cf8844676052e2eb2fcbefd47bb0262e8937
|
|
| MD5 |
244acf57e4a7471b32dd3b74b04b83c2
|
|
| BLAKE2b-256 |
f0340c4f76f49b44d879f7dc58594f679a802aae20447347b4e29d9f41ac2433
|
Provenance
The following attestation bundles were made for acatome_meta-0.3.3-py3-none-any.whl:
Publisher:
publish.yml on retospect/acatome-meta
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
acatome_meta-0.3.3-py3-none-any.whl -
Subject digest:
5a6df9f8998b1e83ffef6fcc6909cf8844676052e2eb2fcbefd47bb0262e8937 - Sigstore transparency entry: 1247273025
- Sigstore integration time:
-
Permalink:
retospect/acatome-meta@b66da4112e485d02f6e8210b9814d77801373b6b -
Branch / Tag:
refs/tags/v0.3.3 - Owner: https://github.com/retospect
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@b66da4112e485d02f6e8210b9814d77801373b6b -
Trigger Event:
push
-
Statement type: