Пишу реальную программу. Рассылка сообщений по WhatsApp при помощи Python.

2024 ж. 13 Мам.
16 324 Рет қаралды

Забрать бесплатные ресурсы и 4000 бонусов от Cloud․ru можно на сайте: sc.link/YZUL5
Автоматизировать отправку сообщений по WhatsApp практически невозможно. Но мы попробуем :)
Используя язык Python, библиотеку PyAutoGui, начальные навыки программирования и серую кепку!
⭐️ Мой подробный "Роадмап деда-программиста. Python бэкенд." со скидкой 20% : stepik.org/a/133721/pay?promo...
(Срок действия ссылки - до 15.05.24)
💾 Финальный код: github.com/break-and-enter/ol...
👨🏻‍💻 Чат Клуба дедов-программистов в Телеграме: t.me/oldcodersclub
00:00 Intro
02:15 Приступаем
03:01 Отошлем одно сообщение
03:40 Проблемы с кодировкой
06:38 Беремся за PyAutoGUI
08:59 Отправим несколько сообщений
10:52 Отправим сообщения по именам из файла
14:20 Финальная программа
15:03 Outro

Пікірлер
  • Мне нравится, что вы объясняете человеческим языком. Это такая редкость. Наверное, сказалось, что до 44 лет вы жили среди людей:) Скучаю по вашим животинкам из прошлых заставок. Видео выходят преступно редко. Раз рекламирует аренду сервера, покажите практические приемы использования: полезные боты или ещё что. Спасибо!

    @OLAFBONDD@OLAFBONDD20 күн бұрын
    • 🤣 спасибо! Животинки еще будут, я просто не хочу их часто эксплуатировать :))) Видео редко потому что чудовищно много времени уходит на один ролик. Текст, сьемка, монтаж. Полезные боты - дело в том что я выкладываю видео про реальные мои случаи написания программ. А ботов я не пишу. Веб - приложения слишком сложно, в одном видео не опишешь , да и не для начинающих это. Напишите вообще что хотели бы видеть на канале, буду думать.

      @oldcoders@oldcoders19 күн бұрын
    • @@oldcoders огромная благодарность за ваш качественный и подробный контент, по Kivy и КivyMD очень мало годных контентов, не могли бы вы запилить что-то годное по этим библиотекам?

      @misterjunior3751@misterjunior375114 күн бұрын
  • Напиши хороший код и ты будешь нужен пару дней. Напиши плохой код и ты будешь нужен всю жизнь

    @johnsnow7288@johnsnow728819 күн бұрын
    • Как врач слушай😂

      @user-tr5sq6qg5e@user-tr5sq6qg5e5 күн бұрын
  • Как всегда все четко и понятно, спасибо!

    @marshal33311@marshal3331120 күн бұрын
  • Поздравляю вас с 100к подписчиками!!!Желаю вам удачи!!!!!!

    @Kira0168@Kira016820 күн бұрын
    • Спасибо ☺️ И вам всего хорошего!

      @oldcoders@oldcoders20 күн бұрын
  • Спасибо! Как всегда просто и понятно!

    @LackyBird@LackyBird19 күн бұрын
  • Спасибо. Как всегда очень полезное видео

    @TheAnthonyDav@TheAnthonyDav20 күн бұрын
  • спасибо, чел, за качественный контент и его подачу. хотелось видеть тебя коучем по таким проектам и другим. творческих успехов тебе

    @issta4391@issta439120 күн бұрын
  • Спасибо. Посмотрел с удовольствием.

    @andredru4278@andredru427820 күн бұрын
  • Я тоже занимаюсь программированием с твоих 44 или 45 лет, Руслан)) Скрипты, конечно, давно перерос, но смотреть автоматизацию реальной задачи всегда приятно. Спасибо за видео.

    @bednyakov@bednyakov16 күн бұрын
  • Спасибо, очень интересное и полезное видео.

    @Podacha66@Podacha6617 күн бұрын
  • Благодарю вас!

    @user-st4ih8cu6l@user-st4ih8cu6l20 күн бұрын
  • Руслан, большое спасибо; четко, ясно и по-делу. интересное решение. успехов.

    @viksir4278@viksir427816 күн бұрын
  • Руслан - красавчик! Как всегда просто и понятно, полезно смотреть твои видео, сразу думаю, что бы мне автоматизировать!

    @Abramov_Andrey@Abramov_Andrey9 күн бұрын
  • Браво, симпатичный костыль. Но главное познавательно и очень быстро! Спасибо!

    @user-mt7mh2iy7y@user-mt7mh2iy7y20 күн бұрын
  • Ну дед, ну даёт ! Лайк конечно же !

    @user-rp7sg6eo4b@user-rp7sg6eo4b20 күн бұрын
  • чтобы не городить огород, можно воспользоваться Селениумом или Плэйрайтом, у них есть явные и неявные ожидания

    @AlexRootx@AlexRootx19 күн бұрын
  • Писал такое же на С++. Только если клиент ответит что то, то можно выбрать один из нескольких шаблонов по сочетанию клавиш от 1 до 9 + control + shift. И шаблон поставляется в поле ввода.

    @user-xg3en3nh1g@user-xg3en3nh1g17 күн бұрын
  • Спасибо за новый урок!!! Но, дед, ты запятую там забыл)))

    @user-kz5bg5pw4l@user-kz5bg5pw4l20 күн бұрын
    • Есть такое! Я по молодежному, без знаков препинания 😉

      @oldcoders@oldcoders20 күн бұрын
  • Костылить периодически приходится, куда уж без этого )). Можно было бы назвать это не костылём, а MVP для солидности )) В любом случае, спасибо за видео, в нем есть несколько очень интересных моментов на подумать.

    @name1355_0ne@name1355_0ne19 күн бұрын
  • 4:38 А почему у вас скидки до МИНУС тридцати процентов, это какие-то "отрицательные скидки"?

    @user-dr1mw9bh5s@user-dr1mw9bh5s20 күн бұрын
    • да не знай, так пишут всегда в магазинах. Чтобы не подумали видимо что скидка как наценка в 30% :)

      @oldcoders@oldcoders19 күн бұрын
  • Ого, здорово и очень интересно. Абалденный пример и реализация нестандартная, пусть и костыльная, но для новичка очень интересно. Подписываюсь :)

    @ViktorBokov@ViktorBokov10 күн бұрын
  • В место задержек если любишь костыли делай скрипт с компьютерным зрением. Чтобы искал кнопочки на экране и нажимал.

    @user-wu3vu8kx9g@user-wu3vu8kx9g19 күн бұрын
    • Да. Но выигрыш по времени врядли будет большой, секунд 5-10 за минуту может выиграешь.

      @oldcoders@oldcoders19 күн бұрын
  • После "Здравствуйте" нужно поставить запятую

    @AlexSav@AlexSav20 күн бұрын
    • Точно!

      @oldcoders@oldcoders20 күн бұрын
  • Красавчик!!!!!!!!!!!!!!!!!!!!!!

    @gurban123@gurban12319 күн бұрын
  • Дед, как всегда, молодец! Спасибо огромное за вашу работу!

    @user-iz3ew9ey3d@user-iz3ew9ey3d18 күн бұрын
  • Только собирался начать ругаться, что долго нет новых видео

    @johnsnow7288@johnsnow728820 күн бұрын
    • 😆

      @oldcoders@oldcoders20 күн бұрын
  • Вот если бы все обучали погромированию на реальных примерах, как вы, все на свете стали бы погромистами. Большое спасибо

    @45kg35@45kg3514 күн бұрын
  • Vielen Dank.❤

    @sky_5743@sky_574317 күн бұрын
  • Хороший урок! Только вот ожидание готовности Ватсаппа уж очень костыльное. Думаю сам вебдрайвер должен уметь сообщать о готовности, но это не точно. А вообще, в подобного рода программах (а мне довелось накорябать парочку таких), готовность управляемой программы можно проверять визуально. Т.е. вроде бы тем же автогуем делаем скриншот экрана и ищем на нем картинку которая нам скажет о том, что программа готова. Ну, например серый смайлик у строки ввода Ватсаппа... И как только смайлик появился - считаем что программа готова. Это правильнее, увлекательнее и открывает широкие горизонты :) Но... Есть свои тонкости, не всегда сходу находит нужную картинку, первый раз возможно будет нужно повозиться.

    @Paradise_Box@Paradise_Box20 күн бұрын
    • Да, можно и так «извращаться» 😀! Но тогда все таки правильнее всего selenium использовать, он для этого прям идеален.

      @oldcoders@oldcoders20 күн бұрын
    • @@oldcoders В данном конкретном случае скорее всего селениум. А через скриншоты самый универсальный способ, который вообще для любой программы подойдёт. Этим он и хорош.

      @Paradise_Box@Paradise_Box20 күн бұрын
    • Вот для таких вещей и есть упомянутый Selenium

      @igorratnik2357@igorratnik235717 күн бұрын
    • @@igorratnik2357 Завтра понадобится управлять ноутпадом, фотошопом или проводником, и Селениум будет стыдливо курить в сторонке. А аутогуи через скриншоты даже не заметит разницы.

      @Paradise_Box@Paradise_Box17 күн бұрын
  • Такой милый, знакомый, дорогой сердцу колхоз. Прям как у меня. Только я на Селениуме колхозил. :-)

    @Socador_bas@Socador_bas13 күн бұрын
    • 😆😆😆

      @oldcoders@oldcoders13 күн бұрын
  • Доброго времени суток. Еще в том году смотрел ваше видео " Как я стал программистом в 44" и как-то все на этом. Но в голове оно у меня периодически мелькало. Вы большой молодец. Так у меня вопрос. Можно ли начинать изучение python по книгам Марка Лутца или они переоценены? Заранее спасибо

    @Gungrave879@Gungrave87916 күн бұрын
    • Здравствуйте, это очень крутые книги, библия Python, но на мой взгляд для начинающего очень сложно и многословно. Просто умрете со скуки продираясь сквозь нее. Начинающему надо что-то более легковесное , чтобы начать. Типа Эрик Мэтиз «Изучая Python» или Шапошникова «Python. Введение в программирование». А потом уже, спустя какое то время, с пониманием, можно вернуться к Лутцу.

      @oldcoders@oldcoders16 күн бұрын
    • @@oldcoders спасибо Вам огромное.

      @Gungrave879@Gungrave87916 күн бұрын
  • Спасибо.

    @Pravilnyi_Massage@Pravilnyi_Massage13 күн бұрын
  • Фух, я думмал я один такие кривые костыли постоянно пилю... )) Спасибо ))

    @MrAlvel@MrAlvel15 күн бұрын
    • Да конечно! Второе название нашего клуба это Клуб дедов-костылистов! 😀

      @oldcoders@oldcoders14 күн бұрын
  • Я облаял это видео. Начал зарабатывать программизмом вообще после 33, но к 43 выгорел.Сейчас просто рефлексирую.

    @baloobear70@baloobear7020 күн бұрын
    • Как говорит молодежь - Флексю! (а может так и не говорит уже)

      @oldcoders@oldcoders19 күн бұрын
  • Почему в слепую enter? Нельзя найти кнопку на странице и нажать её? Почему всё на sleep? Нельзя дождаться прогрузки страницы и начать работу после прогрузки, а не по паузе?

    @xoxot_shamana@xoxot_shamana17 күн бұрын
    • Я иду максимально простым путем. Все что вы предлагаете - усложняет разработку и все равно это будет костыль.

      @oldcoders@oldcoders17 күн бұрын
    • @@oldcoders костыль? Ну допустим. Но это не будет костыль для костыля. Знаете смысл в подходе. Одни для выполнения процедуры десять раз подряд нажмут Ctrl+D в IDE, другие напишут цикл в 3 строки. Работет и тот и другой подход.

      @xoxot_shamana@xoxot_shamana17 күн бұрын
  • А будет видео как это сделать с помощью телеграмм?

    @geniygames4620@geniygames462016 күн бұрын
    • Пока нет, потому что я не пишу телеграм-ботов. А видео у меня о реальных моих задачах. Посмотрите в ютюбе что-то типа «пишем телеграм бота».

      @oldcoders@oldcoders16 күн бұрын
  • Бывает нужно подготовить папу сотен отчетов и отправить через специализированную программу. Использую программку записи движения мышкой и нажатия клавиш. Еще более костыльно: три окна (таблица со списком, БД - генератор отчётоа, программа рассылки), высокая вероятность сбоев. Наверняка есть способ не тыкать мышкой в активное окно, а активировать его по названию из списка открытых...

    @OLAFBONDD@OLAFBONDD20 күн бұрын
    • Папу?😂😅 да ещё и сотен?😊

      @MIRVECTORA@MIRVECTORA19 күн бұрын
    • Эх, какая хорошая задача для нормальной Python - автоматизации. Специализированная программа никак не принимает по другому отчеты? Только руками в ней тыкать мышью и загружать?

      @oldcoders@oldcoders19 күн бұрын
    • @@oldcoders Это 1С и там все программируется... если уметь. С другой стороны, там делов - ввести ИНН получателя, пару кнопок настройки отчёта и сохранить. ИНН брать из запроса по наличию движений по определенным аналитическим счетам. Модуль отправки отчётов также автоматизирован, но клиент отказывается за него платить:) Поэтому обхожусь программой "тыкалкой".

      @OLAFBONDD@OLAFBONDD19 күн бұрын
  • а сколько времени по факту ушло на эту программу? с моменте сел писать либо читать документацию

    @forpc1393@forpc139319 күн бұрын
    • Точно не помню. В районе двух часов. Отвлекаясь и не спеша. Плюс я еще до этого потратил один вечер на pywhatkit. Программа изначально была написана с его использованием. Но потом он у меня начал чудить и пришлось смотреть что у него внутри и переписывать на свой лад.

      @oldcoders@oldcoders19 күн бұрын
  • А бота аналогичного того что можно сделать в телеграмм, в whatsapp можно сделать?

    @MrKim-pt2vm@MrKim-pt2vm17 күн бұрын
    • Неееее! В том то и дело что нельзя.

      @oldcoders@oldcoders17 күн бұрын
    • @@oldcoders плохо.

      @MrKim-pt2vm@MrKim-pt2vm16 күн бұрын
  • А как антиспам система Ватцапа на это всё реагирует? Мне кажется такую на коленке сделанную рассылку "полезных сообщений" оно должно мигом среагировать.

    @DreamingDolphing@DreamingDolphing12 күн бұрын
    • Не.. если небольшое количество сообщений и если пользователи ждут эти сообщения и не нажимают «это спам» - то все ок.

      @oldcoders@oldcoders12 күн бұрын
  • Почему не использовали библиотеку pywhatkit?

    @user-xy9fl7vt9n@user-xy9fl7vt9n15 күн бұрын
    • Попробовал сначала, вроде работало, но потом перестала отправлять сообщения.

      @oldcoders@oldcoders15 күн бұрын
  • окей, на. компе открывается браузер, а как это организоваьб на сервере?

    @Syberby@Syberby17 күн бұрын
    • Я в конце об этом и сказал что не подходит для использования в веб-приложении. Поэтому лучше использовать Selenium.

      @oldcoders@oldcoders17 күн бұрын
  • А если нужно будет 100 000 пользователей отправить рассылку, то тоже будете делать for и ждать по 15 сек на каждой итерации? Такие операции нужно выполнять асинхронно и параллельно. Asyncio в помощь

    @DmitriyKargin@DmitriyKargin19 күн бұрын
    • На 100 тысяч ватсап не даст разослать, забанит. И асинхронно думаю тоже не получится, тот же ватсап так же не даст. С одного номера сразу несколько запросов одновременно ? Вряд ли прокатит.

      @oldcoders@oldcoders19 күн бұрын
    • @@oldcoders А если купить несколько телефонных номеров, запустить нашу программку по массовому распространению WhatsApp сообщений на нескольких компьютерах, тогда будет вам интересна или нет? Сообщения будем отправлять на телефонные номера, которые у меня и у получателя сохранены.

      @user-gh2ml3cf5o@user-gh2ml3cf5o6 күн бұрын
    • Так сработает скорее всего.

      @oldcoders@oldcoders6 күн бұрын
  • Ну, рассылка информации о скидках - это тоже спам, по-сути) Вообще, подобные финты, в некоторых сферах, могут наоборот, отпугивать клиентов, поэтому лучше по-старинке, на почту.

    @yohohowowowo9471@yohohowowowo947117 күн бұрын
    • Клиенты заполняя анкету ставили галочку что готовы получать сообщения об акциях, поэтому не спам. В разных сферах по разному, в нашей емайл вообще не используется.

      @oldcoders@oldcoders17 күн бұрын
  • слип не очень хорош. Можно нажать, когда в строке браузер "найдется" сообщение (т.е. проверяем состояние строки, как только там пояивлось реклоаманое сообщение значит можно нажать enter) , не знаю сам payautogui но обычно такое там должно быть.

    @zemlyanintv7774@zemlyanintv777420 күн бұрын
  • А почему список, а не словарь?

    @user-yv9oh8ix1o@user-yv9oh8ix1o17 күн бұрын
    • Типа ключ - телефон, значение - имя? Можно было бы, да. По разному можно было сделать.

      @oldcoders@oldcoders17 күн бұрын
  • Как раз есть задача сделать рассылку по 10к номеров, для начала. Двое суток займёт, если не собьется по пути - подходит!

    @Sborkin1@Sborkin119 күн бұрын
    • Лучше не делать, ватсап вас однозначно забанит.

      @oldcoders@oldcoders19 күн бұрын
  • прикольно, но настоящие деды кодят на повершелл )) или на вбскрипт

    @evgenykampiler3307@evgenykampiler330716 күн бұрын
  • Ватсап за это санкции на номер не накинет?

    @Receive_@Receive_13 күн бұрын
    • Насколько я знаю если на много номеров рассылать и если в ответ будут нажимать «это спам» - то накинет.

      @oldcoders@oldcoders13 күн бұрын
    • @@oldcoders А количество кликов “это спам знаете”, чтобы получить бан в Ватсапе?

      @user-gh2ml3cf5o@user-gh2ml3cf5o6 күн бұрын
  • куда проще сделать это в зеннопостере без знаний питона)

    @user-ws2gf3qj2o@user-ws2gf3qj2o19 күн бұрын
    • Да много чем можно. Но он же платный?

      @oldcoders@oldcoders19 күн бұрын
    • @@oldcoders ага, но не дорогой, 35 баксов грубо минимальная версия.

      @user-ws2gf3qj2o@user-ws2gf3qj2o19 күн бұрын
  • Я думаю что советские инженеры, заводчане и тд которые в свое время учили сопроматы и такого рода казуистику , если их 40+~50 летних переучить/лись на дэвов то они дали бы прикурить поколению пепси по качеству и всему спектру как хардскилов тау и софт-ов, тогда бы заводы остановились бы и ИИ покинул бы сеть

    @avgustopinochet3598@avgustopinochet35986 күн бұрын
    • В каких то областях да, жизненный опыт это очень ценно. Но вообще не стоит недооценивать молодежь. Умницы, прошаренные и дотошные - снимаю шляпу перед ними!

      @oldcoders@oldcoders6 күн бұрын
  • Такая финя по сравнению телеграм. Ладно замудрили с защитой но ни куда для работы это все равно как палкой шуруп закручтвать да возможно но что дальше ?

    @user-tr5sq6qg5e@user-tr5sq6qg5e5 күн бұрын
    • Да, это несерьезный подход. Плохая программа. Но тем не менее работающая.

      @oldcoders@oldcoders5 күн бұрын
    • @@oldcoders я об этом что работает для рассылок но интересно же принять сообщение текст аудио обработать и отправить в ответ и ещё машинное состояние продумать. У них даже API какой-то платный и закрытый. Однозначно фейсбук финей страдают

      @user-tr5sq6qg5e@user-tr5sq6qg5e5 күн бұрын
  • Почему-то работала не стабильно??!!! Может потому что писал Раджеш Кутропале?? 😂😂😂

    @Hariec88@Hariec8816 күн бұрын
  • Ну, нет же, не совсем обычный дядька. В универе же были азы программирования. Так что вводишь в заблуждение:)

    @torstmp@torstmp18 күн бұрын
    • Хорошо, исправлю на «необычный дядька»!

      @oldcoders@oldcoders18 күн бұрын
    • @@oldcoders То есть - просто сделал типа макроса, как в Excel? Тут столкнулся с проблемой - я проектирую всякие металлоконструкции в SolidEdge, а коллега в SolidWorks. Так вот - оформление производственных чертежей у меня занимало много времени, а тут смотрю: у него всё быстро получается. В общем, оказалось, что в Solidwokrs есть функция записи макросов, чего нет в SolidEdge. Погуглил я эту тему быстренько... Короче вышло так, что на Solidedge макросы пишут через C# или Python. Так что вот, вдохновляете на изучение нового😀

      @torstmp@torstmp18 күн бұрын
  • Зачем так заморачиваться, если в мессенджере можно создать необходимый список для рассылки?

    @user-ke8wc5zj4w@user-ke8wc5zj4w20 күн бұрын
    • Даже если и можно... Можно ли там каждого клиента персонально по имени назвать? А это очень важно в маркетинге... Понимать надо... :)

      @Paradise_Box@Paradise_Box20 күн бұрын
    • Рассылку получит только тот, у кого наш номер будет записан в телефонной книге. Поэтому не подходит, к сожалению.

      @oldcoders@oldcoders20 күн бұрын
    • @@Paradise_Box а для скрипта будешь еще список писать с именами?) А если номера в базе без имен?

      @user-ke8wc5zj4w@user-ke8wc5zj4w20 күн бұрын
    • @@user-ke8wc5zj4w Конечно. На клиентов (в том числе и потенциальных) у отдела маркетинга всегда есть база, в которой и имена и фамилии и телефоны и еще куча интересного. Вытаскиваем из базы и вперед. Такая прога нужна для нескольких десятков и более клиентов... а не для "типабизнеса на авито" с пятком клиентов.

      @Paradise_Box@Paradise_Box19 күн бұрын
  • автор красиво рассказывает @oldcoders вот просто интересно, вы готовитесь к съемкам видео? подбираете ли слова для видео? и т.д.

    @forpc1393@forpc139316 күн бұрын
    • Еще как готовлюсь!! Текст пишу и с суфлера читаю, без этого никак. Вот здесь я обо всем рассказал - kzhead.info/sun/n76Lo9enq5lshGg/bejne.htmlsi=6kjbLHz4R_u3bsPP

      @oldcoders@oldcoders16 күн бұрын
  • Спохватился изучать программирование во времена нейросетей. Браво!

    @cherevkovv@cherevkovv19 күн бұрын
    • Так может говорить человек, который точно не программирует сам….

      @Sborkin1@Sborkin119 күн бұрын
    • @@Sborkin1 это точно ))

      @cherevkovv@cherevkovv19 күн бұрын
  • А деды это кто? Лет в 80?

    @textreanimator@textreanimator18 күн бұрын
    • Ну это мы так шутим. Для начинающих программировать мы деды конечно

      @oldcoders@oldcoders18 күн бұрын
  • Да смотрю далеко ты продвинулся за 3 года писать такие программки которые я не знаю даже наверное люди которые в первую неделю изучают

    @ABtonatiza@ABtonatiza4 күн бұрын
    • Похоже ты большой эксперт по ведению ютюб канала для начинающих, подскажи какие же темы надо на нем раскрывать?

      @oldcoders@oldcoders4 күн бұрын
  • Я на секунду обрадовался(( Не смотрите эту ахинею,тут ничего интересного нет. Ты лучше покажи как сделать всё тоже самое,но без веб браузера.С браузером и обезьяна такое напишет.

    @maximturbo45@maximturbo4519 күн бұрын
    • Фига ты какой четкий и резкий! Без браузера ватсап не позволит.

      @oldcoders@oldcoders19 күн бұрын
    • @@oldcoders ага) да на самом деле ты красавчик, чем больше поток такой информации, тем меньше у меня конкурентов) спасибо

      @maximturbo45@maximturbo4519 күн бұрын
  • Какой ваш питон все таки отвратительный. Повсюду строки. Даже слово "enter" надо набирать вручную полностью. Ни поля тебе, ни enum-а соответствующего)

    @johnconstantine6331@johnconstantine633116 күн бұрын
  • Скольким номерам можно отправлять сообщения до установления бана ватсапом, если их контакты у меня в телефонном справочнике и также мои контакты у них сохранение?

    @user-gh2ml3cf5o@user-gh2ml3cf5o6 күн бұрын
    • Точно не знаю, ватсап не раскрывает как устроены его алгоритмы. Но вычисляет как то массовые рассылки.

      @oldcoders@oldcoders6 күн бұрын
  • А теперь, если можете, сделайте пожалуйста видео, про то как вы считываете ответ вашего клиента и затем на него реагируете каким-то образом-может быть отправляете в ответ новое сообщение и так далее.

    @user-gh2ml3cf5o@user-gh2ml3cf5o6 күн бұрын
    • Это будет совсем извращение. Определять через скриншот в какой чат пришел ответ, активировать этот чат через pyautogui 🤦🏻‍♂️. Это ужас 😄 Нет, на такое я пойти не могу!! (с)

      @oldcoders@oldcoders6 күн бұрын
KZhead