Skip to main content

A tool to download files from a list of URLs

Project description

Gimmie

A simple command-line tool to download files from a list of URLs.

Description

Gimmie ("Give me your files") is a lightweight utility that downloads files from a list of web addresses. Simply provide a text file with one URL per line, and Gimmie will handle the rest.

Features

  • Downloads files from multiple URLs in sequence
  • Extracts filenames automatically from URLs
  • Supports any file type available via HTTP/HTTPS
  • Handles errors gracefully, continuing to the next file if one fails
  • Option to specify a custom download directory

Installation

Requirements

  • Python 3.7 or higher
  • pip package manager

From PyPI (Recommended)

pip install gimmie

From Source

  1. Clone the repository:

    git clone https://github.com/yourusername/gimmie.git
    cd gimmie
    
  2. Install the package:

    pip install .
    

Usage

Basic Usage

  1. Create a text file (e.g., files-to-download.txt) with one URL per line:

    https://example.com/file1.pdf
    https://example.com/file2.jpg
    https://example.com/file3.zip
    
  2. Run Gimmie with the file as an argument:

    gimmie files-to-download.txt
    
  3. Files will be downloaded to a downloads directory in your current working directory.

Command-Line Options

gimmie [-h] [-d DIRECTORY] url_file

Arguments:

  • url_file: Path to text file containing URLs (one per line)

Options:

  • -h, --help: Show help message and exit
  • -d DIRECTORY, --directory DIRECTORY: Directory to save downloaded files (default: downloads)

Example

# Download files to a custom directory
gimmie files-to-download.txt -d my_files

URL File Format

The URL file should contain one URL per line. The tool will:

  • Strip whitespace from lines
  • Skip empty lines and lines starting with '#' (for comments)

Example URL file:

# Files to download
https://example.com/file1.pdf
https://example.com/file2.jpg
https://example.com/file3.zip

Development

Setting Up Development Environment

  1. Clone the repository

  2. Create a virtual environment:

    python -m venv venv
    source venv/bin/activate  # On Windows: venv\Scripts\activate
    
  3. Install development dependencies:

    pip install -e ".[dev,test]"
    

Running Tests

pytest

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

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

gimmie-0.1.0.tar.gz (80.2 kB view details)

Uploaded Source

Built Distribution

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

gimmie-0.1.0-py3-none-any.whl (8.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: gimmie-0.1.0.tar.gz
  • Upload date:
  • Size: 80.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for gimmie-0.1.0.tar.gz
Algorithm Hash digest
SHA256 70068c1d4760e2ca93f604d76543806de63117373c9a822f295e9f4a369c9b8f
MD5 eb86cafc68bd778bba10624fa5b22030
BLAKE2b-256 88b54b3b687f29721d8ccb58d143cd3054c16a71db894d0a48d4834ef746db47

See more details on using hashes here.

File details

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

File metadata

  • Download URL: gimmie-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 8.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for gimmie-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cb42f4a3b4bc4f7a0c603e0033c4f3064fd7a230b0fd954b1599c8910f177487
MD5 f0cf42a8bb8ccbe66f379718e7adc855
BLAKE2b-256 4b12c2ba0ad83aaa2200aa6d66c0f6804ba3b14b5c1094ccdd8c17d988948129

See more details on using hashes here.

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