Exemple #1
0
 def fetch(self, handle, id):
     from product import Product
     from artist import Artist
     jtrack = qobuz.api.get_track(id)
     if not jtrack:
         print "Cannot fetch data"
         return False
     print pprint.pformat(jtrack)
     where = {}
     if 'album' in jtrack:
         P = Product()
         album = P.get(handle, jtrack['album']['id'])
         if not album:
             P.insert_json(handle, jtrack['album'])
     for field in self.fields_name.keys():
         f = self.fields_name[field]
         if not f['jsonmap']: continue
         value = self.get_property(jtrack, f['jsonmap'])
         if not value: continue
         where[field] = value
     if 'interpreter' in jtrack:
         I = Artist()
         interpreter = I.get(handle, jtrack['interpreter'])
         if not interpreter:
             I.insert(handle, jtrack['interpreter'])
     if 'performer' in jtrack:
         I = Artist()
         interpreter = I.get(handle, jtrack['performer'])
         if not interpreter:
             I.insert(handle, jtrack['performer'])
     artist = None
     artist_type = ('artist', 'interpreter', 'composer', 'performer')
     for a in artist_type:
         if a in jtrack and jtrack[a][
                 'name'] and jtrack[a]['name'] != 'None':
             artist = jtrack[a]
             break
     self.insert(handle, where)
     return False
Exemple #2
0
 def fetch(self, handle, id):
     from product import Product
     from artist import Artist
     jtrack = qobuz.api.get_track(id)
     if not jtrack:
         print "Cannot fetch data"
         return False
     print pprint.pformat(jtrack)
     where = {}
     if 'album' in jtrack:
         P = Product()
         album = P.get(handle, jtrack['album']['id'])
         if not album:
             P.insert_json(handle, jtrack['album'])
     for field in self.fields_name.keys():
         f = self.fields_name[field]
         if not f['jsonmap']: continue
         value = self.get_property(jtrack, f['jsonmap'])
         if not value: continue
         where[field] = value
     if 'interpreter' in jtrack:
         I = Artist()
         interpreter = I.get(handle, jtrack['interpreter'])
         if not interpreter:
             I.insert(handle, jtrack['interpreter'])
     if 'performer' in jtrack:
         I = Artist()
         interpreter = I.get(handle, jtrack['performer'])
         if not interpreter:
             I.insert(handle, jtrack['performer'])
     artist = None
     artist_type = ('artist', 'interpreter', 'composer', 'performer')
     for a in artist_type:
         if a in jtrack and jtrack[a]['name'] and jtrack[a]['name'] != 'None':
             artist = jtrack[a]
             break
     self.insert(handle, where)
     return False