Пример #1
0
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)
Пример #3
0
        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)