def get_film(data,fil=''): try: title = uni2ascii(data.get('title')).replace('\'','') except: title = '' try: year = int(data.get('year')) except: year = 0 rate = data.get('rating') votes = data.get('votes') ## Duration runtimes = data.get('runtimes') dur = [] try: for r in runtimes: try: dur.append(float(r)) except: pass except: dur = [] if len(dur) == 0: dur = 0.0 dur = np.mean(dur) ## Languages languages = data.get('languages') mpaa = data.get('mpaa') writer = data.get('writer') certs = data.get('certificates') co_codes = data.get('country codes') lan_codes = data.get('language codes') cover_url = uni2ascii(data.get('cover url')) ## Genres try: gen = [uni2ascii(g) for g in data.get('genres')] except: gen = [''] ## Director try: director =[uni2ascii(D.data.get('name')) for D in data.get('director')] except: director = [''] akas = data.get('akas') asp_rat = data.get('aspect ratio') ## Kind try: kind = uni2ascii(data.get('kind')) except: kind = '' country = data.get('countries') outline = data.get('plot outline') plot = data.get('plot') cast = data.get('cast') peli = my_peli(rating=rate,dur=dur,year=year,languages=languages, votes=votes,title=title,mpaa=mpaa,writer=writer, certificates=certs,country_codes=co_codes, language_codes=lan_codes,cover_url=cover_url,genres=gen, director=director,akas=akas,aspect_ratio=asp_rat, kind=kind,countries=country,plot_outline=outline,plot=plot, cast=cast,fil=fil) return peli
#!/usr/bin/env python # -*- coding: UTF-8 -*- lines = open('films/2001_odisea_en_el_espacio.json','r').readlines() if len(lines) == 1: A = eval(lines[0].lstrip().rstrip()) else: print 'ERROR in JSON file' exit() print A print type(A) from test_class import my_peli s = my_peli() s.update(A) print print s #import json #d = json.loads(lines[0].lstrip().rstrip()) #A = {'rating':7.2, 'votes':38306, 'title':'Los cronocrímenes', 'genres':['Horror','Sci-Fi','Thriller'], 'cover_url':'http://ia.media-imdb.com/images/M/MV5BMTk3MzMyMTY4N15BMl5BanBnXkFtZTcwODI3OTUwMg@@._V1._SX97_SY140_.jpg', 'runtimes':92.0, 'director':['Vigalondo, Nacho'], 'year':2007, 'kind':'movie', 'fil':'cronocrimenes.avi'}