def get_search_result(self, search_pinyin, q, start, rows, fq=None, sort=None, fl=None): if start != '' and rows != '': return self.parse_solr_result(search_pinyin, solr.get_search_result(\ 'vod_media', q, start, rows, fq=fq, sort=sort, fl=fl), fl) else: return self.parse_solr_result(search_pinyin, solr.get_search_result(\ 'vod_media', q, fq=fq, sort=sort, fl=fl), fl)
def get_list_page_model(self): media_id = self.data_desc.getKey(1) json_result = json.loads(solr.get_search_result('vod_media', 'media_id:' + str(media_id), fq=self.default_fq)) medias = json_result['response']['docs'] if len(medias) > 0: return basic_media_model_handler.convert_media(medias[0]) return None
def get_media_by_ids(self): media_ids = self.data_desc.getKey("media_ids") conditions = 'media_id:(' + ' '.join([str(x) for x in media_ids]) + ')' logger.debug('get_media_by_ids:media_ids:%s' % conditions) search_result = json.loads(solr.get_search_result('vod_media', conditions, rows=len(media_ids), fq=self.default_fq)) return basic_media_model_handler.assembly_search_result(search_result)
def get_detail_page_model(self): media_id = self.data_desc.getKey(1) json_result = json.loads(solr.get_search_result('vod_media', 'media_id:' + str(media_id), fq=self.default_fq)) medias = json_result['response']['docs'] if len(medias) > 0 : media = medias[0] media_dict = {} media_dict['id'] = media.get('media_id') media_dict['title'] = media.get('title', '') media_dict['summary'] = media.get('summary', '') media_dict['definition'] = media.get('definition', '') media_dict['pubdate'] = media.get('pubdate', '') media_dict['rate'] = str(media.get('rate', '')) media_dict['total'] = media.get('total', -1) media_dict['current'] = media.get('current', -1) media_dict['default_play_source'] = media.get('default_play_source', -1) media_dict['country'] = media.get('country', '') media_dict['language'] = media.get('language', '') media_dict['category'] = '|'.join(media.get('category_name', [])) media_dict['child_category'] = media.get('child_category_name', []) media_dict['director'] = media.get('director_name', []) media_dict['director_id_list'] = media.get('director_id', []) media_dict['actor'] = media.get('actor_name', []) media_dict['actor_id_list'] = media.get('actor_id', []) media_dict['image_post_url'] = media['image_post_url'] if media.get('image_post_url', '') else media.get('asset_image_post_url', '') media_dict['image_icon_url'] = media['image_icon_url'] if media.get('image_icon_url', '') else media.get('asset_image_icon_url', '') media_dict['image_rec_url'] = media.get('image_rec_url', '') media_dict['is_new'] = media.get('is_new') media_dict['is_series'] = media.get('is_series', '') media_dict['is_collected'] = media.get('is_collected', '') media_dict['is_clip'] = media.get('is_clip', 0) category_id = -1 category_ids = media.get('category_id', []) if category_ids: category_id = category_ids[0] media_dict['category_id'] = category_id if 1001 in category_ids and media_dict['total'] != -1 and media_dict['total'] < media_dict['current']: media_dict['total'] = -1 self.fill_videos(media_dict, media) if media_dict is None: return None self.convertCentralizedPlayerParams(media_dict) # self.check_and_convert_phonix_to_ku6(media_dict) # self.check_and_convert_rainbow_to_ku6(media_dict) return media_dict return None
def get_latest_videos(self): start_time = self.data_desc.getKey('start_time') start = self.data_desc.getKey('start') rows = self.data_desc.getKey('rows') query_condition = 'modified_time:[%d TO *]' % start_time try: query_condition = (query_condition + ' AND category_id:%s'%self.data_desc.getKey('category_id') ) except : pass logger.debug('get_latest_videos, start_time:%d, start:%d, rows:%d' % (start_time, start, rows)) search_result = json.loads(solr.get_search_result(core_name='vod_media', query_condition=query_condition, start=start, rows=rows, fq=self.default_fq, sort='modified_time desc')) return basic_media_model_handler.assembly_search_result(search_result)
def get_channel_video_detail(self): program_id = self.data_desc.getKey(1) channel_id = self.data_desc.getKey(2) pr_list = self.get_video_by_program_id(program_id, channel_id) video_id = pr_list[0].video_id if len(pr_list) > 0 else 0 media_id = self.get_medias_id(video_id) json_result = json.loads(solr.get_search_result('vod_media', 'media_id:' + str(media_id), fq=self.default_fq)) medias = json_result['response']['docs'] if len(medias) > 0 : media = medias[0] video_dict = {} self.fill_videos(video_dict, media, video_id, pr_list) if video_dict is None: return None self.convertCentralizedPlayerParams(video_dict) # self.check_and_convert_phonix_to_ku6(media_dict) # self.check_and_convert_rainbow_to_ku6(media_dict) return video_dict return None