Python и переменные окружения | Где и как хранить секреты в коде | .env, .gitignore

Поделиться
HTML-код
  • Опубликовано: 31 окт 2024

Комментарии • 93

  • @vigauss1889
    @vigauss1889 Год назад +32

    Таких людей единицы, большое тебе, человеческое спасибо за твой вклад в образование, за то, что делишься опытом и разжевываешь всё! Спасибо за информацию и за твой труд!

    • @PythonToday
      @PythonToday  Год назад +2

      Большое спасибо за поддержку!

  • @anatolyiredko9817
    @anatolyiredko9817 Год назад +8

    Уже думал кота не будет, но в конце видео появился! спс :)

    • @PythonToday
      @PythonToday  Год назад +2

      Спасибо, что смотришь до конца)

  • @webmasters7133
    @webmasters7133 Год назад +4

    не знал что можно было написать в файл .env а потом через библиотеку dotenv его вызвать и использовать. Полезно было. Огромное спасиибо друг!

    • @feelinsense
      @feelinsense Год назад

      А в чём разница между этим и созданием стороннего файла и импортом токенов и прочего из него? Только ещё какую-то библиотеку устанавливать...

  • @НовакДжокович-ж8т
    @НовакДжокович-ж8т Год назад +10

    Даешь ООП в студию! многие ждут! полезные материалы у тебя - так держать!

  • @wanderinginthedark1978
    @wanderinginthedark1978 Год назад +5

    Красавчик, короткое и информативное видео) пока с утра сходил на горшок - не залипал в шортсы, а узнал полезную инфу, обнял приподнял брат)

    • @PythonToday
      @PythonToday  Год назад +1

      Спасибо за поддержку брат!)

  • @andreyruban4554
    @andreyruban4554 Год назад +7

    Круто - обожаю вашу уроки). А по ООП будет цикл?)

  • @deus7204
    @deus7204 Год назад +8

    Спасибо за контент! Второй лайк за кота)

    • @PythonToday
      @PythonToday  Год назад

      Благодарю за поддержку!

  • @peveka3191
    @peveka3191 Год назад +2

    Здравствуйте! Очень классный и полезный видеоролик. Спасибо Вам за вклад в наше обучение!

    • @PythonToday
      @PythonToday  Год назад +1

      Большое спасибо за поддержку!

  • @Stas-ir3gh
    @Stas-ir3gh Год назад

    Ого кто-то смог по человечески это объяснить. Спасибо!

  • @Neko-sr4wz
    @Neko-sr4wz Год назад +6

    PythonToday снова удивляет!
    ЛУЧШИЙ КАНАЛ В СНГ ПО ПРАКТИКЕ!
    от заставки опять трусы слетели, я забыл придержать((
    P.S.: я инвалид и не нашел контакт( написал какому-то Cain в телеграмме) все таки придется покупать доступ в твой чат)

  • @Александр-х4о4ш
    @Александр-х4о4ш Год назад +1

    Ещё в PyCharm в конфигурации запуска переменные можно указать, тоже бывает удобно

    • @PythonToday
      @PythonToday  Год назад +3

      На сервере не будет ни PyCharm ни VSCode))

  • @rinatyagafarov5328
    @rinatyagafarov5328 Год назад +1

    Благодарю за видео!

    • @PythonToday
      @PythonToday  Год назад

      Благодарю за фидбэк!

  • @user_-Vovchik
    @user_-Vovchik Год назад +1

    Спасибо огромное. Вообще не знал об этом

    • @PythonToday
      @PythonToday  Год назад

      Надеюсь было полезно) Спасибо за фидбэк!

  • @Zer-st6qv
    @Zer-st6qv Год назад +4

    Спасибо! Лайк, коммент и донат в поддержку ❤ ps не знал про способ передачи переменных окружения при запуске скрипта. Красава, спасибо за годный материал!

    • @PythonToday
      @PythonToday  Год назад +1

      Благодарю за поддержку!

  • @Тілек-я6ы
    @Тілек-я6ы Год назад +1

    Ты читаешь мои мысли

  • @rogersmith3141
    @rogersmith3141 9 месяцев назад

    "Любители виндовс " )))))
    *за кота лайк!

  • @useruser-gl5es
    @useruser-gl5es Год назад +3

    А я использую конструкцию:
    from environs import Env
    # Теперь используем вместо библиотеки python-dotenv библиотеку environs
    env = Env()
    env.read_env()
    BOT_TOKEN = env.str("BOT_TOKEN") # Забираем значение типа str
    это лучше или хуже?

    • @PythonToday
      @PythonToday  Год назад +2

      Это ведь один из вариантов, если удобно и привычно - 👍

    • @forspyke
      @forspyke Год назад +1

      Не ты используешь, а автор проекта, котрый ты себе скачал. environs предоставляет более гибкие возможности, такие как проверка наличия переменных, значения по умолчанию и даже валидацию значений. В то время как dotenv - проста и легковесна. Всё зависит от потребностей проекта, если тебе тупо ключ от бота сохранить, - то хватит и dotenv

  • @user-uh2rs8fi8b
    @user-uh2rs8fi8b Год назад +1

    Спасибо

  • @ВВЗ
    @ВВЗ Год назад +1

    Полезно, спасибо.

    • @PythonToday
      @PythonToday  Год назад

      Спасибо за фидбэк!

  • @andrew-ld1jg
    @andrew-ld1jg Год назад +1

    Спасибо!❤

  • @АнатолийЗемсков-з7м

    Можно шифровать файлы с кредами при помощи ansible-vault

    • @russiantime778
      @russiantime778 Год назад +1

      Мне кажется это самое правильное решение, если где-то на GitHub надо хранить.

  • @RobRiddle-q7i
    @RobRiddle-q7i 9 месяцев назад

    Спасибо, брат

  • @hanma83292
    @hanma83292 Год назад

    Вгень!🔥🔥🔥

  • @Ragnar-mb5rx
    @Ragnar-mb5rx Год назад +1

    Привет. Смотрю все твои видосы, твой канал один из моих любимых по питончику. Каждый видос очень интересный и в телеге постоянно годноту скидываешь. Уже пару книг прочитал по твоей рекомендации и книги реально интересные были.
    Хочу спросить твоего совета как у человека имеющего авторитет в данном вопросе:)
    Я освоил азы питона. Могу писать простейшие скрипты. Немного даже в ООП подразобрался вроде как:)
    Каким способом лучше продолжать совершенствовать навыки, лучше начать пет-проект свой какой то или же например на где то ещё бесплатный курс по языку пройти? Подскажи пожалуйста.
    Спасибо тебе за твою работу. Каждый твой видос очень мотивирует дальше развиваться в этом направлении.
    Удачи в развитии канала. Ждём новой годноты:))

  • @shyhardrols8851
    @shyhardrols8851 Год назад +1

    большое спасибо, за ответ на мой вопрос)

    • @PythonToday
      @PythonToday  Год назад

      Надеюсь полезно!

    • @shyhardrols8851
      @shyhardrols8851 Год назад

      @@PythonToday Полезно, я знал только как доп файл конфиг делать, все остальное было не известно

  • @evgenykampiler3307
    @evgenykampiler3307 4 месяца назад

    И кстати я ждал как вытащить пароли из vault

  • @musicsrise
    @musicsrise Год назад +1

    Будет полезно, чтобы получше обезопасить api-secret в django)
    В теории можно шифровать через какой-нибудь hash. Как в бд, но это муторно. Если не сложно, сделай туториал по docker для пентестеров и вообще для тестировщиков.

    • @PythonToday
      @PythonToday  Год назад +1

      "туториал по docker для пентестеров и вообще для тестировщиков." А чего это, докер для пентестеров? Я хз))

    • @musicsrise
      @musicsrise Год назад

      ​​@@PythonToday hacker lb если быть точнее

    • @musicsrise
      @musicsrise Год назад

      ​​@@PythonToday hacker lab ***

  • @dmitriysavinov9906
    @dmitriysavinov9906 Год назад +1

    Видишь кота - ставишь лайк! :)

  • @SomeoneNoone-zv3tv
    @SomeoneNoone-zv3tv 6 месяцев назад +1

    У меня не получилось сделать как в видео dotenv. Предполагаю, что устарело видео. В файле .env надо писать в формате KEY =123456 именно так, без пробела и ковычек. Далее в файле settings надо импортировать from dotenv import load_dotenv, find_dotenv
    load_dotenv(find_dotenv())
    ну и вызывать переменные из .env в виде: KEY = os.getenv('KEY')
    Сам файл .env должен находится в той же папке, что и settings

  • @evgenykampiler3307
    @evgenykampiler3307 4 месяца назад

    У нас в винде еще используется Ини файлы. Я логины храню открыто а пароли в мд5+ свой ключ

  • @МаксимОснова-х5л

    привет, видел твое видео о коде для отправки мейлов, но у меня вопрос, как можно написать код, чтобы он автоматически чередовал и отправлял 1 из 4 текстов на почты указаные мной в списке, если сможешь мне помочь буду очень благодарен, заранее спасибо!

  • @shortvideos9955
    @shortvideos9955 Год назад

    Дружищще, респект за видео👍 Подскажи,как решить проблему с кодировкой при выводе кириллицы в терминал в vs code? Или это не решаемо в этом IDE?

    • @PythonToday
      @PythonToday  Год назад

      Благодарю за фидбэк! Не совсем понимаю при чем здесь ide, если вы работаете на windows, то используйте параметр encoding при работае с файлами и явно указывайте кодировку.

    • @musicsrise
      @musicsrise Год назад

      With open('filename', 'w', encoding='utf-8') as file: # если не ошибаюсь.

    • @shortvideos9955
      @shortvideos9955 Год назад

      @@musicsrise спасибо, это если с файлами работаешь, а если просто вывести принт в терминал с кириллицей, то выводит ромбики с вопросительными знаками, стоит в настройках utf-8

    • @musicsrise
      @musicsrise Год назад +2

      @@shortvideos9955 ну я себе за привычку взял, если какой-то файл импортирую, то указываю encoding. Также если получаю данные с сайта, записываю их в файл.

    • @musicsrise
      @musicsrise Год назад +2

      @@shortvideos9955 А так тогда тебе надо в настройки самого терминала лезть

  • @Rejgan318
    @Rejgan318 Год назад +1

    Самое главное и не рассказал чем отличается dotenv от обычного конфига. И что все будет работатать и без .env файла, если переменные окружения уже установлены раньше другим способом

    • @Rulezzz3
      @Rulezzz3 Год назад +1

      Тоже не понял разницы, кроме как это так принято

    • @kapedalex1996
      @kapedalex1996 2 месяца назад

      Почему нельзя просто записать пароли в yaml/json, и добавить его гитигнор? Зачем сначала заливать их в переменные, а потом читать переменные в код?

  • @averse27
    @averse27 Год назад

    Привет, вопрос не по теме, у тебя были проблемы со звуком в Kali? я его установил на виртуальную машину, и звук у меня хрипящий брал две версии с официального сайта: под виртуалку и обычный десктоп, везде эта проблема, решения найти быстро не смог.
    если у тебя было тоже самое, подскажи как исправить, пожалуйста.

    • @PythonToday
      @PythonToday  Год назад +1

      Привет, ставил десятки раз, проблем не было

    • @averse27
      @averse27 Год назад

      @@PythonToday спасибо за ответ)

  • @allmazd
    @allmazd Год назад

    А подскажите как сделать такое же крутое отображение в терминале?

  • @Synceditxboxoffice
    @Synceditxboxoffice Год назад +1

    programmer from russia means hacker ❤

  • @stankors9708
    @stankors9708 Год назад

    что если я храню токен телеграм бота в основном файле? его легко стырить с сервера?что тогда мешает также с конфиг

  • @АндрейЧибисов-ц9е
    @АндрейЧибисов-ц9е 8 месяцев назад

    помоги пожа́луйста. Собираю скрипт с помощью pyinstaller и потом когда передаю на другой пк exe файл то он требует .env файл

  • @СултанОтабеков-з3п

    Здравствуйте, я недавно начел изучать aiogram и создавать ботов, я столкнулся с такой проблемой что бот который находится в группе с правами администратора и может читать сообщение от других пользователей группы но не может читать (ловит) сообщении от других ботов. Как можно решить эту проблему? Подскажите пожалуйста

    • @feelinsense
      @feelinsense Год назад

      Я уже давно работаю с aiogram и создаю ботов, которыми активно пользуются, напиши как с тобой связаться, может смогу чем-то помочь

  • @kawainatural6978
    @kawainatural6978 10 месяцев назад

    А какой смысл этого .env, если мы все равно добавляем его в гит игнор и это получается тоже самое, что мы бы создали config.py и так же добавили его в гит игнор. Объясните пожалуйста этот момент, какой профит мы получаем с этой либы.

    • @zakharka3938
      @zakharka3938 8 месяцев назад

      В случае config.py программа работает с питоновскими переменными. В случае файла .env программа работает с любыми переменными окружениями, т.е. файл .env является опциональным.

  • @anikinonline
    @anikinonline 10 месяцев назад

    Я вот чего не понимаю: . env, по сути такой же файл, как и любой файл . py. Какая разница файл с каким расширением использовать, ведь вся суть сводится к тому, чтобы не забыть добавить файл с секретами в гитигнор.

  • @diyorbek553
    @diyorbek553 Год назад

    покажи как скачать видео с ютуба некоторые библиотеки перестали работать после обновления защиты ютуба (pytube, youtube_dl, ...)
    Заранее спасибо ;)

    • @diyorbek553
      @diyorbek553 Год назад

      Есть только один способ загрузки через токен
      запросы ограничены

  • @MinzdraffRU
    @MinzdraffRU Год назад

    echo "%%" в windows не работает ... Последний метод с вводом переменной перед запуском программы в Windows тоже не работает

  • @soulevance9667
    @soulevance9667 6 месяцев назад

    Одно слово - меценат.

  • @Vladimir_F609
    @Vladimir_F609 Год назад +1

    Любители windows, храни нас Бог! 😂 у всех получилось в терминале коммандой 'set'?

    • @Vladimir_F609
      @Vladimir_F609 Год назад +1

      Echo "%API_KEY%" выводит: "%API_KEY%"! А не сам ключ😢

    • @feelinsense
      @feelinsense Год назад +1

      Такая же фигня :(
      Делал через setx API_ID, 22222 - работает, но только на число. Но и этот способ добавляет переменную в среду для юзера в виндовс, а не локально в окружение. Проще говоря на компьютер, в аккаунт который заходишь...
      Раньше пользовался конфигом и импортировал из него переменные и бед не знал. Попробовал "правильно" и чёт пока 2 дня потерял... Безрезультатно...

  • @shohjaxon_official001
    @shohjaxon_official001 Год назад +3

    Привет Я УЗБЕК 🇺🇿🦾

  • @Andy-mv6kk
    @Andy-mv6kk 2 месяца назад

    0% Воды,
    99.9% Информации

  • @ciklomat
    @ciklomat Год назад

    ok

  • @Ariet_Amanbekov
    @Ariet_Amanbekov Год назад +2

    Привет, очень полезные уроки!!!
    Можете написать скрипт для массовую отправку на тг?