Skip to main content

PodGrab

A command-line tool for downloading podcast episodes and generating transcriptions using OpenAI's Whisper model.

Features

  • 🔍 Search podcasts using the iTunes Search API
  • ⬇️ Download individual podcast episodes
  • 🎯 Interactive episode selection for ambiguous matches
  • 📝 Transcribe audio files using OpenAI's Whisper model
  • 📊 Progress bar for downloads
  • 📋 Support for different Whisper model sizes (tiny to large)
  • 🔄 Non-interactive mode for automation

Installation

pip install podgrab

From Source (For Development)

  1. Make sure you have Python 3.11 or later installed
  2. Install Poetry if you haven't already:
    pip install poetry
    
  3. Clone this repository and install dependencies:
    git clone https://github.com/username/podgrab.git
    cd podgrab
    poetry install
    

Usage

Downloading Podcasts

Basic usage to download a podcast episode:

podgrab download "Podcast Name" "Episode Title"

Options:

  • --output/-o: Specify output directory (default: current directory)
  • --non-interactive: Run without interactive prompts
  • --verbose/-v: Enable verbose output
  • --quiet/-q: Suppress non-error messages

Example:

podgrab download "The Daily" "Today's Episode" -o ~/Downloads

Transcribing Audio

Transcribe a downloaded podcast episode:

podgrab transcribe path/to/audio/file.mp3

Options:

  • --model/-m: Specify Whisper model size (tiny, base, small, medium, large)
  • --output/-o: Save transcription to file (default: print to console)

Example:

podgrab transcribe podcast.mp3 -m medium -o transcript.txt

Requirements

  • Python 3.11+
  • Required Python packages (automatically installed):
    • typer
    • requests
    • feedparser
    • rich
    • tqdm
    • openai-whisper
    • torch
    • torchvision
    • torchaudio

Development

  1. Set up the development environment:

    poetry install
    
  2. Run tests:

    poetry run pytest
    

Contributing

  1. Fork the repository
  2. Create a new branch for your feature
  3. Make your changes
  4. Add or update tests as needed
  5. Submit a pull request

License

This project is licensed under the MIT License.

Acknowledgments

  • Uses the OpenAI Whisper model for transcription
  • Built with Typer for the CLI interface
  • Uses the iTunes Search API for podcast discovery

Metadata

Release files for podgrab 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for podgrab 0.1.3
File Size Uploaded Provenance
podgrab-0.1.3.tar.gz 5.7 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for podgrab 0.1.3
File Interpreter ABI Platform
podgrab-0.1.3-py3-none-any.whl Python 3 none any Details

Total release size: 12.1 kB

Release files / podgrab-0.1.3.tar.gz

Download URL podgrab-0.1.3.tar.gz
Size 5.7 kB
Tags Source
SHA-256 checksum
How to use checksums
879ec0c337a8d27cad932fad3007f200f2b1f0d965fe0ab748b377e9fa995def
BLAKE2b-256 checksum
How to use checksums
c9f0c708aa65b8f31c21d09e475187d101b31a2b1011f260e63ad69e52ab692e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.4 CPython/3.12.7 Darwin/24.0.0

Release files / podgrab-0.1.3-py3-none-any.whl

Download URL podgrab-0.1.3-py3-none-any.whl
Size 6.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1a5ec7dba61ceecd7a61e27e983d0d05cc8fe02d63bcabc7c7ffc16de12d4e3c
BLAKE2b-256 checksum
How to use checksums
92e0f1147989d07da9c90c550dffabcba521f7b9adce60a1a11bf3dec6e1688a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.4 CPython/3.12.7 Darwin/24.0.0

Security for podgrab 0.1.3

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.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page