Welcome, guest | Sign In | My Account | Store | Cart

Notice! PyPM is being replaced with the ActiveState Platform, which enhances PyPM’s build and deploy capabilities. Create your free Platform account to download ActivePython or customize Python with the packages you require and get automatic updates.

pypm install scrappy

How to install Scrappy

  1. Download and install ActivePython
  2. Open Command Prompt
  3. Type pypm install scrappy
 Python 2.7Python 3.2Python 3.3
Windows (32-bit)
Windows (64-bit)
Mac OS X (10.5+)
Linux (32-bit)
Linux (64-bit)
0.3.0.alpha.4 Available View build log
GPL 3.0
Lastest release
version 0.3.0.alpha.4 on Jan 9th, 2014


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

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.



Most users will want to install Scrappy through pip.

pip install Scrappy --user

Developers can clone the master branch and fork locally.

git clone https://github.com/louist87/Scrappy.git

Note: tests can be run by invoking nosetests -w tests/ from Scrappy's root directory. Please ensure that nosetests pass before submitting your pull request


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
if scrape.map_episode_info():
  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.


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.


Scrappy wiki

Subscribe to package updates

Last updated Jan 9th, 2014

What does the lock icon mean?

Builds marked with a lock icon are only available via PyPM to users with a current ActivePython Business Edition subscription.

Need custom builds or support?

ActivePython Enterprise Edition guarantees priority access to technical support, indemnification, expert consulting and quality-assured language builds.

Plan on re-distributing ActivePython?

Get re-distribution rights and eliminate legal risks with ActivePython OEM Edition.