https://github.com/tvgrabbers/tvgrabpyapi
An xmltv-API for extracting and merging tv programme information from several sources
https://github.com/tvgrabbers/tvgrabpyapi
data-retrieval grabber python retrieve-data xmltv-data
Last synced: 3 months ago
JSON representation
An xmltv-API for extracting and merging tv programme information from several sources
- Host: GitHub
- URL: https://github.com/tvgrabbers/tvgrabpyapi
- Owner: tvgrabbers
- License: gpl-3.0
- Created: 2016-07-23T20:49:09.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2022-12-12T01:33:26.000Z (over 3 years ago)
- Last Synced: 2025-11-29T03:11:57.450Z (7 months ago)
- Topics: data-retrieval, grabber, python, retrieve-data, xmltv-data
- Language: Python
- Homepage: https://github.com/tvgrabbers/tvgrabpyAPI/releases/latest
- Size: 527 KB
- Stars: 28
- Watchers: 10
- Forks: 9
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# tvgrabpyAPI
[Goto the WIKI](https://github.com/tvgrabbers/tvgrabpyAPI/wiki)
## Sometime after October 1st 2017 TheTVDB API V1 will stop working.
At present we are working on support for the API V2. A beta release is expected soon.
## New [version 1.0.7](https://github.com/tvgrabbers/tvgrabpyAPI/releases/tag/stable-1.0.7) release based on [DataTreeGrab module v1.4.0](https://github.com/tvgrabbers/DataTree/releases/tag/stable-1.4.0)
**17-05-2017** (dtg 1.3.3) With a significant speed increase of in my use case 30% (from 68 minutes to 48 minutes)
**10-07-2017** (dtg 1.4.0) With now an even larger speed increase of in my use case 65% to 23.5 minutes (1.72 sec/page)
### Summary
tv_grab_py_API is an API for creating xmltv compatible tv grabbers. It is the succesor of [tv_grab_nl_py version 2.2](https://github.com/tvgrabbers/tvgrabnlpy) making all of its functionallity available to the rest of the world.
### Requirements
* Python 2.7.9 or higher (currently not python 3.x)
* The [pytz module](http://pypi.python.org/pypi/pytz)
* The [requests module](https://pypi.python.org/pypi/requests)
* The [DataTreeGrab module](https://github.com/tvgrabbers/DataTree/)
* Connection with the Internet
#### Ubuntu Focal 20.04 Users ONLY ###
* The latest version of Ubuntu no longer provides the python2 versions of python-requests or its dependency python-urllib3
* You can download compatible .deb packages [here](https://github.com/tvgrabbers/tvgrabpyAPI/files/4534005/python-requests.zip)
* To install unpack the zip file into a directory
* Run the following commands from that directory
* `sudo dpkg -i python-urllib3_1.25.8-1_all.deb`
* `sudo dpkg -i python-requests_2.22.0-2build1_all.deb`
* If you get an error about missing dependencies run the following command:
* `sudo apt-get install python2 python2-dev python-tz python-certifi python-chardet python-idna python-cryptography python-socks python-six python-ipaddress ca-certificates`
### Installation
* Especially under Windows, make sure Python 2.7.9 or higher is installed
* Make sure the above mentioned Python 2 packages are installed on your system
* Download the latest release and unpack it into a directory
* Run:
* under Linux: `sudo ./setup.py install` from that directory
* under Windows depending on how you installed Python:
* `setup.py install` from that directory
* Or: `Python setup.py install` from that directory
(the frontend script(s) will install into `C:\Program Files\Python27\Scripts`)
* Run the frontend (presently only tv_grab_nl3.py) with --configure
* Check the created configuration file ~/.xmltv/tv_grab_nl3.conf and activate the desired channels.
### Some features
* No need for anybody who wants to create a grabber to know much about Python. You mainly must write one or more json data_defs defining one or more sources. These are [DataTreeGrab data_defs](https://github.com/tvgrabbers/DataTree/wiki/data_def_language) with some specific extensions.
* All retrieved data is stored in an sqlite database which:
* speeds up data retrieval
* makes it possible to repeatetly access the data again while off-line
* Extensive list of user-settable options to give a user maximum oportunity to adapt the program to his or her need.
* User setable genre translation tables with developer settable defaults.
* Multiple language support (currently English and Dutch).
* data_def updates are automatic.
* theTVDB.com lookup.