def bangumi_calendar(self, force_update=False, save=True, cover=None): if force_update and not test_connection(): force_update = False print_warning('Network is unreachable') if force_update: print_info('Fetching bangumi info ...') Bangumi.delete_all() weekly_list = self.fetch(save=save) else: weekly_list = Bangumi.get_updating_bangumi() if not weekly_list: print_warning('Warning: no bangumi schedule, fetching ...') weekly_list = self.fetch(save=save) if cover is not None: # download cover to local cover_to_be_download = cover for daily_bangumi in weekly_list.values(): for bangumi in daily_bangumi: _, file_path = convert_cover_to_path(bangumi['cover']) if not glob.glob(file_path): cover_to_be_download.append(bangumi['cover']) if cover_to_be_download: print_info('Updating cover ...') download_cover(cover_to_be_download) return weekly_list
def bangumi_calendar(self, force_update=False, save=True, cover=None): """ :param force_update: :type force_update: bool :param save: set true to enable save bangumi data to database :type save: bool :param cover: list of cover url (of scripts) want to download :type cover: list[str] """ if force_update and not test_connection(): force_update = False print_warning('Network is unreachable') if force_update: print_info('Fetching bangumi info ...') weekly_list = self.fetch(save=save) else: weekly_list = Bangumi.get_updating_bangumi() if not weekly_list: print_warning('Warning: no bangumi schedule, fetching ...') weekly_list = self.fetch(save=save) if cover is not None: # download cover to local cover_to_be_download = cover for daily_bangumi in weekly_list.values(): for bangumi in daily_bangumi: _, file_path = convert_cover_url_to_path(bangumi['cover']) if not (os.path.exists(file_path) and imghdr.what(file_path)): cover_to_be_download.append(bangumi['cover']) if cover_to_be_download: print_info('Updating cover ...') download_cover(cover_to_be_download) return weekly_list
def bangumi_calendar(self, force_update=False, save=True, cover=False): if force_update and not test_connection(): force_update = False print_warning('network is unreachable') if force_update: print_info('fetching bangumi info ...') Bangumi.delete_all() weekly_list = self.fetch(save=save) else: weekly_list = Bangumi.get_all_bangumi() if not weekly_list: print_warning('warning: no bangumi schedule, fetching ...') weekly_list = self.fetch(save=save) runner = ScriptRunner() patch_list = runner.get_models_dict() for i in patch_list: weekly_list[i['update_time'].lower()].append(i) if cover: # download cover to local cover_to_be_download = [] for daily_bangumi in weekly_list.values(): for bangumi in daily_bangumi: followed_obj = Followed(bangumi_name=bangumi['name']) if followed_obj: bangumi['status'] = followed_obj.status _, file_path, _ = self.convert_cover_to_path( bangumi['cover']) if not glob.glob(file_path): cover_to_be_download.append(bangumi['cover']) if cover_to_be_download: print_info('updating cover') for cover in tqdm.tqdm(cover_to_be_download): self.download_cover(cover) return weekly_list