Skip to content

Commit 4573b27

Browse files
committed
Remove imdb import from tvdb module
fixes #69
1 parent 8b15759 commit 4573b27

File tree

2 files changed

+23
-27
lines changed

2 files changed

+23
-27
lines changed

pythonbits/bb.py

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -560,7 +560,26 @@ def _render_form_title(self):
560560
def _render_summary(self):
561561
t = tvdb.TVDB()
562562
result = t.search(self['tv_specifier'])
563-
return result.summary()
563+
summary = result.summary()
564+
565+
try:
566+
imdb_id = result.show['imdbId']
567+
i = imdb.IMDB()
568+
imdb_info = i.get_info(imdb_id)
569+
except Exception:
570+
summary['titles'] = {}
571+
else:
572+
imdb_sum = imdb_info.summary()
573+
tvdb_title = summary['title']
574+
# Original title
575+
summary['title'] = imdb_sum['title']
576+
# dict of international titles
577+
summary['titles'] = imdb_sum['titles']
578+
# "XWW" is IMDb's international title, but unlike TVDB, it doesn't
579+
# include the year if there are multiple shows with the same name.
580+
if 'XWW' in summary['titles']:
581+
summary['titles']['XWW'] = tvdb_title
582+
return summary
564583

565584
def _render_section_description(self):
566585
summary = self['summary']

pythonbits/tvdb.py

Lines changed: 3 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
# -*- coding: utf-8 -*-
22
import tvdb_api
3-
from . import imdb
43

54

65
class TvdbResult(object):
@@ -51,24 +50,6 @@ def summary(self):
5150
'imdb_id': self.show['imdbId'],
5251
}
5352

54-
def add_show_titles(self, imdb_id, summary):
55-
i = imdb.IMDB()
56-
try:
57-
imdb_info = i.get_info(imdb_id)
58-
except Exception:
59-
summary['titles'] = {}
60-
else:
61-
imdb_sum = imdb_info.summary()
62-
tvdb_title = summary['title']
63-
# Original title
64-
summary['title'] = imdb_sum['title']
65-
# dict of international titles
66-
summary['titles'] = imdb_sum['titles']
67-
# "XWW" is IMDb's international title, but unlike TVDB, it doesn't
68-
# include the year if there are multiple shows with the same name.
69-
if 'XWW' in summary['titles']:
70-
summary['titles']['XWW'] = tvdb_title
71-
7253

7354
class TvdbSeason(TvdbResult):
7455
def summary(self):
@@ -91,15 +72,12 @@ def summary(self):
9172
s['url'] = series_url
9273
s['cover'] = self.banner(season_number)
9374
s['season'] = season_number
94-
s['imdb_id'] = self.show['imdbId']
95-
self.add_show_titles(s['imdb_id'], s)
9675
return s
9776

9877

9978
class TvdbEpisode(TvdbResult):
10079
def summary(self):
10180
summary = super(TvdbEpisode, self).summary()
102-
imdb_show_id = summary['imdb_id']
10381
summary.update(**{
10482
'season': self.episode['airedSeason'],
10583
'episode': self.episode['episodenumber'],
@@ -117,14 +95,13 @@ def summary(self):
11795
'url': 'https://thetvdb.com/series/{}'.format(
11896
self.show['slug']),
11997
'cover': self.banner(self.episode['seasonnumber'])})
120-
self.add_show_titles(imdb_show_id, summary)
12198
return summary
12299

123100

124101
class TVDB(object):
125-
def __init__(self):
126-
# todo: selectfirst=False
127-
self.tvdb = tvdb_api.Tvdb(interactive=True, banners=True, actors=True)
102+
def __init__(self, interactive=True):
103+
self.tvdb = tvdb_api.Tvdb(
104+
interactive=interactive, banners=True, actors=True)
128105

129106
def search(self, tv_specifier):
130107
show = self.tvdb[tv_specifier.title]

0 commit comments

Comments
 (0)