def download_and_register_illustrations(self, illustrations): image_registration_arguments = [] for illustration in illustrations: image_url = illustration.meta_single_page.get('original_image_url', illustration.image_urls.large) tags = [tag['name'] for tag in illustration.tags] url_basename = os.path.basename(image_url) extension = os.path.splitext(url_basename)[1] name = 'pixiv_{}{}'.format(str(illustration.id), extension) self.app_api.download(url=image_url, name=name) image_registration_arguments.append((name, tags)) Index.get_or_create_instance().register_new_illustration_list(image_registration_arguments)