Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

GUI to view tv program details using TV maze application programming interface. Written in python 3 and PyQt 5, it also stores user favourites in an SQLite database. It uses python module pytvmaze to interface with API

License

NotificationsYou must be signed in to change notification settings

gavinlyonsrepo/tv_viewer

Repository files navigation

WebsiteRssDonate

Overview

  • Name: tv_viewer
  • Title : Graphical user interface to view TV show details using the TV maze API
  • Description:

GUI to view details of tv programs using TV maze applicationprogramming interface. Written in python 3 and PyQt 5, it also storesuser favourites in an SQLite database.It uses python module pytvmaze to interface with APIand python module prettytable to help display results.

  • TV maze API

  • Author: Gavin Lyons

  • Upstream repository:Github

  • Developed and tested on Linux as a Linux App.

Table of contents

Installation and Setup

Latest version 2.3.

PyPi & pip , pipx

The program is present in python package index, Pypi.Install usingpip orpipx to the location or environment of your choice.Package name = tv-viewer

Arch based Linux distribution

If you are using an arch Linux based system,the program is packaged in the AUR as 'tv_viewer'.

Manually install from github

The package is also archived on github and can be manually download and installedvia python and setup.py

curl -sL https://github.com/gavinlyonsrepo/tv_viewer/archive/2.3.tar.gz| tar xzcd tv_viewer-2.3python3 setup.py build python3 setup.py install --user

Usage

type below in terminal to launchor select icon from Desktop app menus under Other( Linux only)

tv_viewer.py

File system

File PathDescription
'HOME'/.config/tv_viewer/fav.dbFavourite Database, created by program on startup
'HOME'/.config/tv_viewer/tvviewer.cfgconfig file, created by program on startup
'HOME'/.cache/tv_viewer/TVviewer_YYMMDD_HHMMSS.logLog file Path can be adjusted in config
'HOME'/.local/share/icons/tv_viewer.pngicon, Linux only
'HOME'/.local/share/applications/tv_viewer.desktopdesktop entry, Linux only
tv_viewer.pymain executable python script
tv_qt_class.pypython module dealing with PyQt code
tv_sqllite.pypython module dealing with SQLite code
tv_api_work.pypython module dealing with Pytvmaze code
tv_logger_conf.pypython module dealing with logging and config file

When the program starts for first time it creates a blank database and a config file
and (if installed by pip) downloads from github using curl the two files for the desktop entry and icon.All files are placed in 'HOME'/.local/* . On Linux systems 'HOME' is defined by os.environ['HOME']on windows os.environ['HOMEPATH']

Log file

A debug log file to store information outputted by program.

2017-12-04 15:03:32:INFO:__main__:  Main Loop Start2017-12-04 15:04:42:WARNING:tv_api_work.tv_api_work:No next episode data available

Exceptions are generated by software as a result of missing and incompleteAPI data by TV maze for some shows. These are caught and outputtedto log file and won't interfere with running of program.The software should catch most issuesand output them there. Also displayed here are various other debug information.Logging can be switched on and off in and the output path can be changed.

Configuration file

The configuration file is created on startup and populated by default values

SettingValueDefaultNote
loggingonoffon or offoffToggles logging output
logpathFile path to place log files$HOME/.cache/tv_viewer/
networkcheckonoffor or offontoggles network test uses ping
networkurlurlwww.tvmaze.comurl to test by network test

Dependencies

DependenciesUsageURL
prettytable 3.3.0Used to format Data into tables Link
pytvmaze 2.0.8Python interface to TV Maze APIlink
pyqt5 5.15.6GUI toolkitLink

Features

From the menu bar a user can select about and exit options.From here they can also view latest log file and configuration file contents.The TV maze API associates a unique ID with each TV show called the Maze_ID.On the main screen the user is prompted to enter name of show in input box.The software then returns a list of television shows based on the input.The user can then select the show by row number and is presented withvarious details of it. From here they select more detailed informationby selecting one of the radio buttons and pressing details.Options include overview, seasons, cast,crew, episodes and more miscellaneous information.They can also view and/or toggle the favourite status of show bypressing delete or add favourite button.

The software also includes a favourite function where usercan store favourites TV shows in a database.The database has one table show and two fields name and number.the maze_ID of the show is stored at number.The contents of the database can be displayed by pressing Favourites button.Favourites records can be added by entering a maze_id in input boxand pressing add favourite button, records can be deleted by adding a maze_idof show in database and pressing delete favourite button.The favourite section will also show next episode dateand days till next episode. You also access the tv show details screen from hereby adding a maze_id and pressing search.A reset and exit button is also available.There is a status light with 3 colours

  1. Green : ready
  2. Yellow : busy , accessing network or files
  3. Red : network check failed, The network check is carried out at start up and when certain buttons fail it can turned off.

Screenshot

There are screenshots in this repository in documentation folder.

 image

About

GUI to view tv program details using TV maze application programming interface. Written in python 3 and PyQt 5, it also stores user favourites in an SQLite database. It uses python module pytvmaze to interface with API

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages


[8]ページ先頭

©2009-2025 Movatter.jp