arXiv Appendix Extractor
A powerful command-line tool to download LaTeX source files for arXiv papers, intelligently extract appendix sections, and clean up source files for papers without appendices.
This tool is ideal for researchers and data scientists who need to programmatically analyze the mathematical derivations and proofs often found in the appendices of scientific papers.
Features
- Download by Date or ID: Fetch papers from a specific date and category, or by a list of individual arXiv IDs.
- Intelligent Appendix Extraction: Uses a hybrid approach:
- HTML-Assisted: Prefers high-quality HTML from ar5iv.org for accurate section detection.
- Heuristic Fallback: If HTML is unavailable, it uses robust heuristics to find appendices in the raw LaTeX source.
- Robust and Resumable: Maintains a progress file to automatically resume interrupted jobs, saving time and bandwidth.
- Parallel Processing: Leverages multiple CPU cores to process papers in parallel, significantly speeding up large jobs.
- Smart Cleanup: Includes a separate utility to safely remove the source files of papers that were found to have no appendix, saving disk space.
- Easy to Use: Packaged as a simple command-line tool.
Installation
# (After you build and upload to PyPI)
pip install arxiv-appendix-extractor
Usage
Main Extractor Tool
The main tool is arxiv-extractor. You must provide either --date or --ids.
1. Process papers from a specific date:
This command will process the first 10 papers from the 'cs' (Computer Science) category on August 15, 2025, using 4 parallel workers.
arxiv-extractor --date 2025-08-15 --category cs --max-papers 10 --workers 4
2. Process specific papers by ID:
arxiv-extractor --ids 2310.06825 2403.00318
All results and intermediate files will be saved in the pipeline_output_refactored/ directory by default.
Cleanup Tool
After running the extractor, you can clean up the source files for papers that had no appendices.
The arxiv-cleanup tool requires the report file and the papers directory generated by the extractor.
1. Perform a "dry run" (highly recommended first):
This will show you which directories would be deleted, without actually deleting anything.
arxiv-cleanup \
--report-file pipeline_output_refactored/final_appendix_results.json \
--papers-dir pipeline_output_refactored/papers \
--dry-run
2. Execute the cleanup:
This will prompt you for confirmation before deleting files.
arxiv-cleanup \
--report-file pipeline_output_refactored/final_appendix_results.json \
--papers-dir pipeline_output_refactored/papers
To skip the confirmation prompt (e.g., in a script), add the -y flag.
Metadata
Release files for arxiv-appendix-extractor 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| arxiv_appendix_extractor-0.1.0.tar.gz | 11.0 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| arxiv_appendix_extractor-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 24.1 kB
Release files / arxiv_appendix_extractor-0.1.0.tar.gz
| Download URL | arxiv_appendix_extractor-0.1.0.tar.gz |
|---|---|
| Size | 11.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
47981026a24a2e7b9881ce44172140aafb748ec2956f687046869017947a6b62
|
|
BLAKE2b-256 checksum How to use checksums |
a91c47e24f20398c662d90e02192b6474ca9caa18b7a4335b8730b238247947f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.2
|
Release files / arxiv_appendix_extractor-0.1.0-py3-none-any.whl
| Download URL | arxiv_appendix_extractor-0.1.0-py3-none-any.whl |
|---|---|
| Size | 13.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9e98e586991e52c36010e178eb2627502de32f33d2201b155f6ee52fde41178c
|
|
BLAKE2b-256 checksum How to use checksums |
6e424fb40085431e506c1979b34b2719fe7beccc81a415100a4198c509a3f8e6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.2
|
Security for arxiv-appendix-extractor 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.