diff --git a/ox/web/imdb.py b/ox/web/imdb.py
index 866befd..ecba5c7 100644
--- a/ox/web/imdb.py
+++ b/ox/web/imdb.py
@@ -41,6 +41,14 @@ class Imdb(SiteParser):
'type': 'list'
},
+ 'budget': {
+ 'page': 'business',
+ 're': [
+ '
Budget
(.*?)
(.*?)',
'type': 'list'
},
+ 'gross': {
+ 'page': 'business',
+ 're': [
+ 'Gross
(.*?)\(',
+ lambda data: findRe(data.replace(',', ''), '\d+')
+ ],
+ 'type': 'int'
+ },
'keywords': {
'page': 'keywords',
're': '(.*?)',
@@ -210,6 +226,14 @@ class Imdb(SiteParser):
're': '([\d,]*?) votes',
'type': 'string'
},
+ 'worldwide_gross': {
+ 'page': 'business',
+ 're': [
+ '\$([\d,]+?) \(Worldwide\)',
+ lambda data: int(data.replace(',', '')),
+ ],
+ 'type': 'list'
+ },
'writers': {
'page': 'combined',
're': [
@@ -305,6 +329,15 @@ class Imdb(SiteParser):
if key in self:
del self[key]
+ if 'worldwide_gross' in self:
+ if not 'gross' in self:
+ self['gross'] = 0
+ self['gross'] += max(self['worldwide_gross'])
+ del self['worldwide_gross']
+
+ if 'budget' in self and 'gross' in self:
+ self['profit'] = self['gross'] - self['budget']
+
class ImdbCombined(Imdb):
def __init__(self, id, timeout=-1):
_regex = {}