Download OpenReview papers by decision.
Project description
OpenReview Paper Downloader
Simple download, listing, and search of oral, spotlight, accepted, or rejected papers from OpenReview into tidy folders by decision.
Despite the name, this works for any OpenReview-hosted conference (NeurIPS, ICLR, ICML, etc.).
Installation
pip install openreview_downloader
Usage
The CLI saves PDFs into downloads/<venue>/<decision>/ with sanitized filenames.
Available decisions:
oral– Oral presentationsspotlight– Spotlight presentationsaccepted– All accepted papersrejected– Rejected papersall– Accepted and rejected papers
Authentication
Some OpenReview venues require authenticated API access. If OPENREVIEW_USERNAME and OPENREVIEW_PASSWORD are present in the environment, the CLI uses them automatically and does not prompt.
To save credentials for future runs:
ordl auth
You can also check or clear saved credentials:
ordl auth status
ordl auth logout
When no environment or saved credentials are available, ordl asks for your OpenReview email and password interactively before contacting OpenReview.
Latest ICML example (2026)
OpenReview may require authenticated API access for ICML 2026. Run ordl auth once, or set OPENREVIEW_USERNAME and OPENREVIEW_PASSWORD in your environment.
Download all ICML 2026 spotlight papers:
ordl spotlight --venue-id ICML.cc/2026/Conference
Download Output:
downloads
└── icml2026
└── spotlight
├── 34584_Foundations_of_Equivariant_Deep_Learning_Unifying_Graph_and_Sheaf_Neural_Networks.pdf
...
└── 34218_Information-Theoretic_Disentangled_Latent_Modeling_with_Conditional_Diffusion_for_Incomplete_Multi-View_Clustering.pdf
See decision counts without downloading:
ordl --info --venue-id ICML.cc/2026/Conference
Example output:
Fetching accepted submissions for ICML.cc/2026/Conference...
Accepted submissions: 6341
Rejected submissions: 214
ICML 2026
---
Oral: 0
Spotlight: 536
Accepted: 6341
Rejected: 214
Preview accepted ICML 2026 papers:
ordl accepted --list --head 3 --venue-id ICML.cc/2026/Conference
Basic examples (NeurIPS)
Download all NeurIPS oral papers:
ordl oral --venue-id NeurIPS.cc/2025/Conference
Download Output:
downloads
└── neurips2025
└── oral
├── 27970_Deep_Compositional_Phase_Diffusion.pdf
...
└── 28928_Generalized_Linear_Mode_Connectivity.pdf
Download all NeurIPS oral and spotlight papers:
ordl oral,spotlight --venue-id NeurIPS.cc/2025/Conference
Download all accepted NeurIPS papers (any presentation type):
ordl accepted --venue-id NeurIPS.cc/2025/Conference
See decision counts without downloading:
ordl --info --venue-id NeurIPS.cc/2025/Conference
Example output:
Fetching accepted submissions for NeurIPS.cc/2025/Conference...
Accepted submissions: 5286
Rejected submissions: 254
NeurIPS 2025
---
Oral: 77
Spotlight: 687
Accepted: 5286
Rejected: 254
List and preview papers
List all accepted papers without downloading:
ordl accepted --list --venue-id NeurIPS.cc/2025/Conference
List accepted and rejected papers:
ordl all --list --venue-id NeurIPS.cc/2025/Conference
Show only the first 3 accepted papers:
ordl accepted --list --head 3 --venue-id NeurIPS.cc/2025/Conference
Example output:
Fetching accepted submissions for NeurIPS.cc/2025/Conference...
Accepted submissions: 5286
Matched papers: 5286
Showing first: 3
---
29297 [accepted] Time-o1: Time-Series Forecasting Needs Transformed Label Alignment
authors: Hao Wang, Licheng Pan, Zhichao Chen, Xu Chen, Qingyang Dai, Lei Wang, Haoxuan Li, Zhouchen Lin
id: RxWILaXuhb
pdf: downloads/neurips2025/accepted/29297_Time-o1_Time-Series_Forecasting_Needs_Transformed_Label_Alignment.pdf
29260 [accepted] REVE: A Foundation Model for EEG - Adapting to Any Setup with Large-Scale Pretraining on 25,000 Subjects
authors: Yassine El Ouahidi, Jonathan Lys, Philipp Thölke, Nicolas Farrugia, Bastien Pasdeloup, Vincent Gripon, Karim Jerbi, Giulia Lioi
id: ZeFMtRBy4Z
pdf: downloads/neurips2025/accepted/29260_REVE_A_Foundation_Model_for_EEG_-_Adapting_to_Any_Setup_with_Large-Scale_Pretraining_on_25000_Subjects.pdf
If you omit DECISIONS while listing or searching, the CLI defaults to accepted papers and exits without downloading:
ordl --head 20 --venue-id NeurIPS.cc/2025/Conference
Search, grep, and regex workflows
Search over title, authors, abstract, keywords, decision, venue, id, and paper number. --search and --grep are aliases; matching is case-insensitive by default.
Preview accepted papers matching a text query:
ordl accepted --list --search diffusion --head 2 --venue-id NeurIPS.cc/2025/Conference
Example output:
Fetching accepted submissions for NeurIPS.cc/2025/Conference...
Accepted submissions: 5286
Matched papers: 710
Showing first: 2
Text hits shown: 4
---
29119 [accepted] CADGrasp: Learning Contact and Collision Aware General Dexterous Grasping in Cluttered Scenes
authors: Jiyao Zhang, Zhiyuan Ma, Tianhao Wu, Zeyuan Chen, Hao Dong
id: CB8jwNE2vV
pdf: downloads/neurips2025/accepted/29119_CADGrasp_Learning_Contact_and_Collision_Aware_General_Dexterous_Grasping_in_Cluttered_Scenes.pdf
match: abstract / diffusion: ... high-dimensional representation, we introduce an occupancy-[diffusion] model with voxel-level conditional guidance and force closu...
29103 [accepted] KLASS: KL-Guided Fast Inference in Masked Diffusion Models
authors: Seo Hyun Kim, Sunwoo Hong, Hojung Jung, Youngrok Park, Se-Young Yun
id: gOG9Zoyn4R
pdf: downloads/neurips2025/accepted/29103_KLASS_KL-Guided_Fast_Inference_in_Masked_Diffusion_Models.pdf
match: title / diffusion: KLASS: KL-Guided Fast Inference in Masked [Diffusion] Models
Preview regex matches and show snippets plus counts:
ordl accepted --list --regex 'diffusion|transformer' --head 2 --venue-id NeurIPS.cc/2025/Conference
Download the same selection by rerunning the same query without --list:
ordl accepted --search diffusion --venue-id NeurIPS.cc/2025/Conference
Download only the first 10 matches:
ordl accepted --search diffusion --head 10 --venue-id NeurIPS.cc/2025/Conference
Require multiple terms or patterns by repeating the flags:
ordl accepted --list --grep diffusion --grep protein --venue-id NeurIPS.cc/2025/Conference
For scripts, agents, and crawlbots, use JSON Lines output while listing:
ordl accepted --list --search diffusion --head 2 --format jsonl --venue-id NeurIPS.cc/2025/Conference
The first JSON line is a summary with the number of matched and shown papers; each following line is one paper record with stable fields such as id, number, decision, title, authors, pdf_path, match_count, and matches.
JSONL keeps progress logs on stderr so stdout can be piped directly into tools:
{"decisions": ["accepted"], "head": 2, "matched_papers": 710, "shown_papers": 2, "type": "summary", "venue_id": "NeurIPS.cc/2025/Conference"}
{"authors": "Jiyao Zhang, Zhiyuan Ma, Tianhao Wu, Zeyuan Chen, Hao Dong", "decision": "accepted", "id": "CB8jwNE2vV", "match_count": 1, "matches": [{"count": 1, "field": "abstract", "query": "diffusion", "snippet": "... high-dimensional representation, we introduce an occupancy-[diffusion] model with voxel-level conditional guidance and force closu..."}], "number": 29119, "pdf_path": "downloads/neurips2025/accepted/29119_CADGrasp_Learning_Contact_and_Collision_Aware_General_Dexterous_Grasping_in_Cluttered_Scenes.pdf", "title": "CADGrasp: Learning Contact and Collision Aware General Dexterous Grasping in Cluttered Scenes", "type": "paper", "venue": "NeurIPS 2025 poster", "venueid": "NeurIPS.cc/2025/Conference"}
Other Conferences (ICLR, ICML, etc.)
Just change the --venue-id to the appropriate OpenReview handle.
ICLR 2025 orals only:
ordl oral --venue-id ICLR.cc/2025/Conference
ICLR 2025 accepted papers (all formats):
ordl accepted --venue-id ICLR.cc/2025/Conference
ICML 2025 oral + spotlight:
ordl oral,spotlight --venue-id ICML.cc/2025/Conference
You can use any other OpenReview venue ID in the same way.
CLI Options
DECISIONS(positional) – Comma-separated list of decisions to select (oral,spotlight,accepted,rejected,all)--venue-id– OpenReview venue ID (default:NeurIPS.cc/2025/Conferenceor envVENUE_ID)--out-dir– Custom output directory (default:downloads/<venue>/)--no-skip-existing– Re-download even if the PDF is already present--info– Print decision counts for the venue and exit--list– List selected papers and exit without downloading--head N– Limit the selection to the firstNpapers; useful for previews or small downloads--search TEXT/--grep TEXT– Text search across paper metadata; repeat to require multiple terms--regex PATTERN– Regex search across paper metadata; repeat to require multiple patterns--case-sensitive– Make search and regex matching case-sensitive--format text|jsonl– Output format for--list;jsonlis convenient for automationordl auth– Save OpenReview credentials for future runsordl auth status– Show whether credentials come from the environment, saved auth, or neitherordl auth logout– Remove saved OpenReview credentials
Development
Install in editable mode with development dependencies:
pip install -e '.[dev]'
Run the tests:
python -m unittest discover -s tests
License
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
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 openreview_downloader-0.1.6.tar.gz.
File metadata
- Download URL: openreview_downloader-0.1.6.tar.gz
- Upload date:
- Size: 18.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
18c2cbca37bbee8644a6fa38e4be4c4b7c308167f51ee529a0c9aa5c6c8a63a4
|
|
| MD5 |
a38930368befd751b6e6af842bf70a62
|
|
| BLAKE2b-256 |
f35d70e53f64ea4a29eed36d23defa863e39e0b56a84dd50aba6d829ade8c545
|
File details
Details for the file openreview_downloader-0.1.6-py3-none-any.whl.
File metadata
- Download URL: openreview_downloader-0.1.6-py3-none-any.whl
- Upload date:
- Size: 17.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c35fed22b16d4982af0d83de034f105b1e2cad7429887f40b914b27db7ebc0dc
|
|
| MD5 |
db9650cf3f6d945c3220f284309ee64c
|
|
| BLAKE2b-256 |
3e655560211c24b95b54d35e7ff1a219bbc0c4783b126a4b06a22d0dd1b069b8
|