tvrage3

https://badge.fury.io/py/tvrage3.png https://travis-ci.org/kalind/tvrage3.png?branch=master https://pypip.in/d/tvrage3/badge.png

Python3 client for accessing tv show information from www.tvrage.com

Features

  • Lazy, you can search tvrage with quick-search and still get all the information as you would get with a full search about the specified show. When a Show object is asked to return information not provided by the search method used, it will query tvrage for the information.
  • Will handle the occasional database errors and information inconsistencies in the tvrage database sane and gracefully.
  • High-level api, handles all the XML stuff for you.

Usage

  • Searching

    • Full search

      Returns a list of Show objects.

      from tvrage3.search import search
      results = search('Buffy')
      first = results[0]
      first.name # => 'Buffy the Vampire Slayer'
      
    • Quick search

      Returns a show object, the closest match to search term or None.

      from tvrage3.search import quick_info
      result = quick_info('Csi crime')
      result.name # => 'CSI: Crime Scene Investigation'
      
      # Enable stricter matching
      result = quick_info('CSI crime', exact=True)
      result == None # => True
      
    • Search by id

      Returns a Show object, or None if id is incorrect.

      from tvrage3.search import search_id
      result = search_id('2930')
      result.name # => 'Buffy the Vampire Slayer'
      
  • Show objects

    Show objects should not be initialized manually, it should be done by one of the search functions, but for this example we do.

    from tvrage3.api import Show
    show = Show(show_id='3183')
    
    show.air_day        # => 'Wednesday'
    show.air_time       # => '22:00'
    show.classification # => 'Scripted'
    show.country        # => 'US'
    show.ended_year     # => None
    show.genres         # => ['Action', 'Crime', 'Drama']
    show.link           # => 'http://www.tvrage.com/CSI'
    show.name           # => 'CSI: Crime Scene Investigation'
    show.network        # => OrderedDict([('@country', 'US'), ('#text', 'CBS')])
    show.runtime        # => 60
    show.seasons        # => 14
    show.show_id        # => '3183'
    show.started_year   # => 2000
    show.status         # => 'Returning Series'