Skip to main content

MovieList 1.5

A utility application to catalogue, sort, filter, and play media files on local disk. The catalogue can be imported using csv text, and it can be maintained by adding, editing, and deleting records.

In addition to flat lists of media, support is provided to group the media into ‘series’ in an arbitrarily deep tree structure. This is extremely useful when the catalogue is used for TV episodes, or for ‘franchise’ movies (Poirot, Season 9, Episode 3; Star Wars Episode 4).

In v1.4 is the ability to print out a list of the media was added. The method chosen uses Webkit and the system’s native printer support.

WIP The latest addition for v1.5 enables movie information to be retrieved from IMDB. This should make it much quicker filling out things like the director and the stars, whilst continuing to enable the information to be edited and updated manually.

Installation

For Versions up to 1.5 the only supported platform is Linux. It should work with Mac, but I do not have a Mac available for verifying the port.

[NB Check this for 2015] The port to Windows is not possible at present (July 2013) because the Python-gi libraries are not available for that platform (it may be possible to back-port to Python 2.7 and use PyGTK instead - I have not tried it and don’t plan to anytime soon).

System Requirements:

  • Python 3

  • Gtk

  • Python Gtk+ introspection bindings 3.4.2 (part of gi)

  • lxml >3.0 (and supporting libraries)

  • cairo (part of gi)

  • WebKit (part of gi)

Installation (Linux):

  1. Unzip the tar.gz somewhere.

  2. In a console window navigate to the MovieList-1.5.x directory and run the following command as root (on Ubuntu/Debian use sudo):

    [sudo] python3 setup.py install

  3. On Linux a desktop launcher is installed, which you should be able to find and use in your desktop (tested on Ubuntu/Unity and Debian/Xfce).

Upgrades

Upgrading does not require removal of the older version.

However, to avoid compatibility issues with the configuration file, any existing configuration should be removed or renamed before running an update for the first time. Any configuration you want to recover can be copied into the new configuration from the saved one after the first run.

On Linux, the user’s configuration file can be found at ~/.config/MovieList/MovieList.cfg

Design Notes and Plans

MovieList allows storage of data in two formats, a Python ‘pickle’ file, or an xml file. The pickle has some advantages for a large database, but the xml version makes it easier to transport data between other packages and manually edit the data when required.

Rather than use Python’s own sax and dom parsers, the xml implementation is based on element trees, using lxml.

To print the movie data, the lxml element tree model of the data is used to generate html via an xslt transform. The html is fed into a WebView for parsing and rendering, and to administer the print interface.

(It should be possible to use weasyprint to do the parsing and rendering, but there seem to be incompatibilities between weasyprint and gnome introspection).

The playing of the media is delegated to VLC Media Player, which, of course, is assumed to be installed. A future version of MovieList may be able to choose the media player to use.

A simple import from csv text is available to facilitate creating a new file. Future versions may enable importing to add to an existing database, possibly by using csv, but also possibly by extending the xml facilities.

Author:

Bob Bowles <bobjohnbowles@gmail.com>

Metadata

Release files for MovieList 1.5.1

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

Source distribution (sdist)

Source distribution for MovieList 1.5.1
File Size Uploaded Provenance Actions
MovieList-1.5.1.tar.gz 182.2 kB Without provenance Details for MovieList-1.5.1.tar.gz

Release files / MovieList-1.5.1.tar.gz

Download URL MovieList-1.5.1.tar.gz
Size 182.2 kB
Tags Source
SHA-256 checksum
How to use checksums
6fe55bbc5bc9cbb94d1c443edd361793765843594ff8d5dd240791108bd977f2
BLAKE2b-256 checksum
How to use checksums
6cc32fa92ff907d6306997f7a2f0645b84ba63f23ad4db5cbb859469842156c0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for MovieList 1.5.1

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