60 lines
2.0 KiB
Python
60 lines
2.0 KiB
Python
# -*- coding: UTF-8 -*-
|
|
# vi:si:et:sw=4:sts=4:ts=4
|
|
|
|
import ox.web.criterion
|
|
import ox.web.imdb
|
|
import ox.web.impawards
|
|
|
|
import models
|
|
from poster.models import PosterCache
|
|
import modules
|
|
|
|
def addPoster(m, url, site, site_id):
|
|
if PosterCache.objects.all().filter(url=url).count() == 0:
|
|
p = PosterCache(url=url, site=site, site_id=site_id, movie_id=m)
|
|
p.save()
|
|
|
|
def get_ids():
|
|
for id in ox.web.impawards.get_ids():
|
|
if id in (
|
|
'2005/night',
|
|
'2007/hands_of_the_dragon',
|
|
'2008/nosferatu_project',
|
|
'2009/murph',
|
|
'1962/well_bury_you',
|
|
'1974/matter_of_winning',
|
|
'2006/last_time_i_trust_you_with_anything',
|
|
):
|
|
continue
|
|
if models.MovieId.objects.all().filter(impawards_id=id).count() == 0:
|
|
data = ox.web.impawards.get_data(id)
|
|
if data and 'imdbId' in data:
|
|
m = models.get_movie_id(data['imdbId'])
|
|
if m:
|
|
if not m.impawards_id:
|
|
print 'impawards', ox.web.impawards.get_url(id)
|
|
m.impawards_id = id
|
|
m.save()
|
|
for poster in data['posters']:
|
|
addPoster(m, poster, 'impawards.com', m.imdb_id)
|
|
else:
|
|
print 'missing impawards', ox.web.impawards.get_url(id)
|
|
|
|
for id in ox.web.criterion.get_ids():
|
|
if id in ('626', '835'):
|
|
continue
|
|
if models.MovieId.objects.all().filter(criterion_id=id).count() == 0:
|
|
print 'criterion', id
|
|
data = ox.web.criterion.get_data(id, get_imdb=True)
|
|
if data and 'imdbId' in data:
|
|
m = models.get_movie_id(data['imdbId'])
|
|
if not m.criterion_id:
|
|
m.criterion_id = id
|
|
m.save()
|
|
addPoster(m, poster, 'criterion.com', m.criterion_id)
|
|
else:
|
|
print data['title'], "no imdbId"
|
|
|
|
modules.get_ids.run()
|
|
|