Skip to main content

A python script to extract the open-review comments for a paper into a markdown file for easy copy/pasting during rebuttals

Project description

Extract OpenReview Comments

PyPI version Python 3.11+ License: MIT

A Python command-line tool to extract OpenReview comments for a paper into markdown format for easy copy/pasting when writing rebuttals.

Features

  • 📥 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

Installation

From PyPI (recommended)

pip install extract-openreview-comments

From Source

git clone https://github.com/chanind/extract-openreview-comments.git
cd extract-openreview-comments
pip install -e .

For Development

git clone https://github.com/chanind/extract-openreview-comments.git
cd extract-openreview-comments
pip install -e ".[dev]"

Or with uv (faster):

uv sync

Usage

Basic Usage

Extract comments from a public OpenReview forum:

extract-openreview-comments <forum_id>

This will save all comments to comments.md in the current directory.

With Authentication

For private content or to access additional information:

extract-openreview-comments <forum_id> -u your_email@example.com -p your_password

Save to Custom File

extract-openreview-comments <forum_id> -o my_reviews.md

Split into Separate Files

Save each comment to a separate file in a directory:

extract-openreview-comments <forum_id> --separate-files -d output_directory/

Finding the Forum ID

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.

Command-Line Options

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.

Output Format

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...

---

Development

Running Tests

uv run pytest

Linting and Formatting

uv run ruff check .
uv run ruff format .

Type Checking

uv run pyright

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

Links

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

extract_openreview_comments-0.1.0.tar.gz (12.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

extract_openreview_comments-0.1.0-py3-none-any.whl (8.8 kB view details)

Uploaded Python 3

File details

Details for the file extract_openreview_comments-0.1.0.tar.gz.

File metadata

File hashes

Hashes for extract_openreview_comments-0.1.0.tar.gz
Algorithm Hash digest
SHA256 725d339064269fb048d23f114df270fe9e279e740b5402e654812cf557462d16
MD5 23031277e7ef16a550e300f6ac7b262a
BLAKE2b-256 6ae37b49daac9730a865b2f78c6eeb3fc67893ec7586c946f7ba79a6797e9864

See more details on using hashes here.

Provenance

The following attestation bundles were made for extract_openreview_comments-0.1.0.tar.gz:

Publisher: ci.yaml on chanind/extract-openreview-comments

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file extract_openreview_comments-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for extract_openreview_comments-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 38bfd7abe5fd6c420d7dcdddf61e856c1d7af7425e43915ee6cb8269e1b57f93
MD5 c00017f62d0d2543c18d925d23b8e6e5
BLAKE2b-256 f9715ab33d85c8afc31e3a53aa089b78ab5d29479e208547d8bf152fd454bc57

See more details on using hashes here.

Provenance

The following attestation bundles were made for extract_openreview_comments-0.1.0-py3-none-any.whl:

Publisher: ci.yaml on chanind/extract-openreview-comments

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page