Skip to main content

Rename video files based on information scraped from thetvdb.com

Project description

Scrappy

Scrappy provides an intuitive interface for renaming video files based on information scraped from thetvdb.com! In short, you can turn something like bsg_301.avi into Battlestar.Galactica.S03.E01.Occupation.

Scrappy provides a command-line app and a GUI app (coming soon), as well as a documented API for integrating scrape-based renaming into 3rd party applications.

https://api.travis-ci.org/louist87/Scrappy.png?branch=master

Installation

pip install Scrappy --user

Note: tests can be run by invoking nosetests -w tests/ from Scrappy’s root directory.

API

Simple API Call

import scrappy.core as scrappy

# Initialize a scrape
# Series name is automatically inferred
scrape = scrappy.Scrape('its always sunny in philadelphia 101.mkv')

# Query TheTVDB for data and rename
err = .2  # Max error (difference coefficient) to accept result
if scrape.map_episode_info(err):  # Returns false if series not found.  Try increasing err.
  scrape.rename_files(test=True)  # test file rename (no changes committed when test == True)

Advanced API Use

The scrappy API provides options for:

  • Glob pattern matching

  • Selecting from file name formats (and defining custom formatters)

  • Selecting from multiple TVDB query results

  • Fixing errors

Documentation for these functions can be found on the API wiki page.

Application

Manual Scraping

Scrappy also functions as a command-line and GUI application.

To start the interactive GUI application, invoke the scrappy.py script without specifying any files.

Launching Scrappy while passing files will launch the command-line app. When using the command-line app, you are free to either define all of the parameters in the form of command-line arguments, or use settings defined in the configuration file.

The Scrappy application docstring is as follows:

Usage:  scrappy [PATH] ... [options]

-a --auto               Automatically scrape and rename without user interaction.
-p --profile            User-specified profile
-i ID --tvdbid ID       Specify TVDB id
-l LANG --lang LANG     Specify language code [default: en].
--confidence            Lower bound to consider a guessed series name [default: 0.]
--thresh                Threshold for series name matching with TVDB query [default: 0.]
--interactive           Manually select show from TVDB query results.
-t --test               Test run.  Do not modify files.
-c --cfg                Use alternate config file

Full documentation for the command-line application can be found here.

Documentation

Scrappy wiki

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

Scrappy-0.2.10.beta.11.tar.gz (15.6 kB view hashes)

Uploaded Source

Supported by

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