A Python command-line tool to extract OpenReview comments for a paper into markdown format for easy copy/pasting when writing rebuttals.
- ๐ฅ Extract all comments and reviews from any OpenReview forum
- ๐ Format comments as clean, readable Markdown
- ๐ Support for both public and private content (with authentication)
- ๐ Save to a single file or split into separate files per comment
- ๐ Preserves reply threads and nested discussions
- โก Fast and easy to use
pip install extract-openreview-commentsExtract comments from a public OpenReview forum:
extract-openreview-comments <forum_id>This will save all comments to comments.md in the current directory.
For private content or to access additional information:
extract-openreview-comments <forum_id> -u [email protected] -p your_passwordextract-openreview-comments <forum_id> -o my_reviews.mdSave each comment to a separate file in a directory:
extract-openreview-comments <forum_id> --separate-files -d output_directory/The forum ID is the unique identifier for a paper on OpenReview. You can find it in the URL:
https://openreview.net/forum?id=FORUM_ID_HERE
For example, in https://openreview.net/forum?id=rJXMpikCZ, the forum ID is rJXMpikCZ.
Usage: extract-openreview-comments [OPTIONS] FORUM_ID
Options:
-u, --username TEXT OpenReview username (optional for public content)
-p, --password TEXT OpenReview password (optional for public content)
-o, --output PATH Output file path (default: comments.md)
-s, --separate-files Save each comment to a separate file
-d, --output-dir PATH Output directory for separate files (default: comments/)
--baseurl TEXT OpenReview API base URL (default: https://api2.openreview.net)
--help Show this message and exit.
The tool generates well-formatted Markdown with:
- Comment metadata (author, date)
- Review content (summary, strengths, weaknesses, questions)
- Ratings and confidence scores
- Nested reply threads
- Clear section separators
Example output:
# Paper Title
**Total Comments:** 5
---
## Comment by Reviewer_ABC
**Date:** 2024-01-15 10:30:00
**Review:**
This paper presents an interesting approach to...
**Rating:** 8: Top 50% of accepted papers
**Confidence:** 4: High
### Replies:
## Comment by Authors
**Date:** 2024-01-20 14:00:00
**Response:**
We thank the reviewer for their feedback...
---uv run pytestuv run ruff check .
uv run ruff format .uv run pyrightContributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Built using the OpenReview Python API
- CLI powered by Click
- Built using Claude Code