def main(): args = get_parsed_arguments() target_books_dir, target_images_dir = create_books_and_images_dirs(args) downloaded_books = [] for book_id in range(args.start_id, args.end_id + 1): try: downloaded_book = download_book(book_id, target_books_dir, target_images_dir, args.skip_txt, args.skip_img) downloaded_books.append(downloaded_book) print(f'Downloaded book: {BOOK_URL.format(book_id)}') except ConnectionError as conn_err: print(conn_err, file=sys.stderr) time.sleep(5) except HTTPError as http_err: print(f'{http_err}: id {book_id}', file=sys.stderr) result_filepath = args.json_path or os.path.join(args.dest_dir, 'downloaded_books.json') with open(result_filepath, 'w', encoding='utf_8') as file: json.dump(downloaded_books, file, ensure_ascii=False, indent=4)
def main(): args = get_parsed_arguments() target_books_dir, target_images_dir = create_books_and_images_dirs(args) downloaded_books = [] start_page = args.start_page end_page = args.end_page or get_pages_amount(args.collection_url) for page_number in range(start_page, end_page + 1): url = urljoin(args.collection_url, str(page_number)) try: downloaded_books.extend( download_books_on_page(url, target_books_dir, target_images_dir, args.skip_txt, args.skip_img)) print(f'Processing of page {page_number} is finished') except ConnectionError as conn_err: print(conn_err, file=sys.stderr) time.sleep(5) except HTTPError as http_err: print(f'{http_err}: page {page_number}', file=sys.stderr) result_filepath = args.json_path or os.path.join(args.dest_dir, 'downloaded_books.json') with open(result_filepath, 'w', encoding='utf_8') as file: json.dump(downloaded_books, file, ensure_ascii=False, indent=4)
bot = Bot() bot.login( username=os.getenv('INSTAGRAM_LOGIN'), password=os.getenv('INSTAGRAM_PASSWORD') ) folder_files = os.listdir(images_folder) jpg_images = filter(lambda x: x.endswith('.jpg'), folder_files) for image in jpg_images: filepath = os.path.join(images_folder, image) if not os.path.isfile(filepath): continue filename = os.path.splitext(image)[0] try: bot.upload_photo(filepath, filename) finally: try: os.remove( f'{os.path.join(images_folder, image)}.REMOVE_ME' ) except FileNotFoundError: os.remove(os.path.join(images_folder, image)) else: print('The directory does not exist') if __name__ == '__main__': load_dotenv() args = get_parsed_arguments() upload_images(args.images_folder)