Skip to content

jmuriki/images_to_telegram

Repository files navigation

Скачивание фотографий

Данный проект помогает автоматизировать процессы скачивания и публикации фотографий NASA и SpaceX в Telegram.

Установка

Должен быть установлен python3. Затем используйте pip (или pip3, если есть конфликт с python2) для установки зависимостей:

pip install -r requirements.txt

или

pip3 install -r requirements.txt

Рекомендуется использовать venv для изоляции проекта.

Ключи и параметры

Сохраните ключи/токены/параметры в .env файл в директорию проекта в следующем формате:

Необходимые

NASA_API_KEY=вместо этого текста вставьте ключ
TELEGRAM_TOKEN=вместо этого текста вставьте токен
TELEGRAM_CHAT_ID=вместо этого текста вставьте @имя канала

Для получения API ключа NASA зарегистрируйтесь на https://api.nasa.gov .

Для получения токена Telegram, воспользуйтесь telegram ботом @BotFather.

В качестве chat_id используйте @имя вашего telegram канала (добавьте бота в список администраторов канала).

Необязательные

PUBLICATION_INTERVAL=вместо этого текста вставьте число

Интервал публикаций задаётся в часах. По умолчанию установлен на 4 часа.

Запуск

fetch_spacex_images.py

Осуществляет скачивание фотографий последнего или конкретного запуска spaceX.

Находясь в директории проекта, откройте с помощью python3 файл fetch_spacex_images.py

python3 fetch_spacex_images.py

Если добавить необязательный параметр --id и номер запуска, скрипт скачает его фотографии, а не последние из доступных на сайте.

python3 fetch_spacex_images.py --id 5eb87d47ffd86e000604b38a

fetch_nasa_apod_images.py

Осуществляет скачивание избранного фото дня.

Находясь в директории проекта, откройте с помощью python3 файл fetch_nasa_apod_images.py

python3 fetch_nasa_apod_images.py

fetch_nasa_epic_images.py

Осуществляет скачивание последней эпической серии фотографий Земли.

Находясь в директории проекта, откройте с помощью python3 файл fetch_nasa_epic_images.py

python3 fetch_nasa_epic_images.py

single_publishing.py

Осуществляет единоразовую публикацию указанной или случайной фотографии (при отсутствии указанной).

Находясь в директории проекта, откройте с помощью python3 файл single_publishing.py

python3 single_publishing.py

Путь с именем фотографии не является обязательным параметром.

python3 single_publishing.py --path "вместо этого текста вставьте в кавычки полный путь с именем и расширением файла для следующей публикации"

circular_publishing.py

Осуществляет автоматическую постепенную публикацию по одной всех имеющихся фотографий с заданным временным интервалом или же раз в 4 часа (по умолчанию). Если все фотографии уже опубликованы, программа перемешает список и продолжит выкладывать в том же цикле.

Находясь в директории проекта, откройте с помощью python3 файл circular_publishing.py

python3 circular_publishing.py

Настройка временного интервала производится через переменную окружения. Подробности описаны выше, в пункте Необязательные раздела Ключи и параметры.

multifunctional_module.py

Данный модуль содержит общие функции, необходимые для работы вышеперечисленных скриптов.

Цель проекта

Код написан в образовательных целях на онлайн-курсе для веб-разработчиков https://dvmn.org/.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages