В воскресенье в 18:00 состоится третий стрим.
Продолжаем делать Telegram-бота для управления VPSкой.
Что мы уже сделали:
- Выполнение произвольной команды с выводом результата.
- Выполнение последовательности команд с запоминанием изменения пути при использовании команды
- Оповещение администратора о запуске-остановке бота и меню.
- Меню управления Docker-контейнерами.
Что ещё в планах:
- Сделать вывод используемых сервером ресурсов (ОЗУ, ЦПУ).
- Сделать меню с избранными командами. Для реализации необходимо подключить БД используя SQLAlchemy.
- Сделать обработку сообщений только от администратора.
Если у вас есть ещё идеи - пишите в комментариях!
Всех жду Воскресенье 18:00: https://www.youtube.com/@codeonanapkin
P.S. Всем, кто поддерживает канал на Boosty доступен репозиторий с исходным кодом проекта.
Продолжаем делать Telegram-бота для управления VPSкой.
Что мы уже сделали:
- Выполнение произвольной команды с выводом результата.
- Выполнение последовательности команд с запоминанием изменения пути при использовании команды
cd
.- Оповещение администратора о запуске-остановке бота и меню.
- Меню управления Docker-контейнерами.
Что ещё в планах:
- Сделать вывод используемых сервером ресурсов (ОЗУ, ЦПУ).
- Сделать меню с избранными командами. Для реализации необходимо подключить БД используя SQLAlchemy.
- Сделать обработку сообщений только от администратора.
Если у вас есть ещё идеи - пишите в комментариях!
Всех жду Воскресенье 18:00: https://www.youtube.com/@codeonanapkin
P.S. Всем, кто поддерживает канал на Boosty доступен репозиторий с исходным кодом проекта.
🔥2
Доброго всем вечера)
Решил я, значится, подготовиться к стриму. Вспомнить, подучить, почитать доку) Позавчера начал... И пропал.
Пока готовился, наверное, изучил столько же, сколько знал до этого.
И про коллбэки подробнее почитал и с выводом htop повоевал.. Сегодня вот, думал, быстренько прочту про SQLAlchemy..ага, всё ещё разбираюсь. Применение немного отличается от того, что я использовал в FastAPI.
В общем, стрим завтра обещает быть интересным.
Решил я, значится, подготовиться к стриму. Вспомнить, подучить, почитать доку) Позавчера начал... И пропал.
Пока готовился, наверное, изучил столько же, сколько знал до этого.
И про коллбэки подробнее почитал и с выводом htop повоевал.. Сегодня вот, думал, быстренько прочту про SQLAlchemy..ага, всё ещё разбираюсь. Применение немного отличается от того, что я использовал в FastAPI.
В общем, стрим завтра обещает быть интересным.
🔥5👍1
🤯Два с половиной часа! Можно считать, что бот готов. По мелочи пройтись напильником, привести к одному виду, но он работает как задумывалось изначально.
Запись: https://www.youtube.com/watch?v=ZmSrlHJQikw
Исходный код доступен для подписчиков на Boosty.
Дальше если и буду дорабатывать бота, то самостоятельно, обновляя его в репозитории.
Идей на следующее воскресенье у меня нет. Что посоветуете? Что было бы вам интересно увидеть?
Запись: https://www.youtube.com/watch?v=ZmSrlHJQikw
Исходный код доступен для подписчиков на Boosty.
Дальше если и буду дорабатывать бота, то самостоятельно, обновляя его в репозитории.
Идей на следующее воскресенье у меня нет. Что посоветуете? Что было бы вам интересно увидеть?
🔥2
Доброго всем вечера.
Удивительный сегодня день. Думал как обычно проснусь и буду весь день по продуманному вчера плану делать дела, а потом БАЦ, позвонил друг.
Повидался с другом, пришёл домой, "ну всё, пора что-то поделать"... БАЦ! Внезапно появились домашние дела...
В итоге сегодня практически ничего не делал)
Вот недавно занялся работой. Поправил документацию по некому, начал вести документацию по планам развития салфетки.
Сейчас займусь ревью кода в неком... Пожелайте удачи....тем, чей код буду смотреть) 😈😈😈
Удивительный сегодня день. Думал как обычно проснусь и буду весь день по продуманному вчера плану делать дела, а потом БАЦ, позвонил друг.
Повидался с другом, пришёл домой, "ну всё, пора что-то поделать"... БАЦ! Внезапно появились домашние дела...
В итоге сегодня практически ничего не делал)
Вот недавно занялся работой. Поправил документацию по некому, начал вести документацию по планам развития салфетки.
Сейчас займусь ревью кода в неком... Пожелайте удачи....тем, чей код буду смотреть) 😈😈😈
👍4🔥2
Всем привет.
Интересная тема - асинхронный Django, вебсокеты и взаимодействие со всем этим. Я привык, что джанго по умолчанию синхронный, но когда требуется установить постоянное подключение с обменом данными между несколькими клиентами, тут уже не до синхронности. Возможно, когда нибудь напишу об этом пост)
Уже четверг, а я всё ещё не придумал, чем мы займёмся на стриме в воскресенье, если не придумаю идею, стрима не будет)) Накидайте тем и это не обязательно ТГ бот😉
Интересная тема - асинхронный Django, вебсокеты и взаимодействие со всем этим. Я привык, что джанго по умолчанию синхронный, но когда требуется установить постоянное подключение с обменом данными между несколькими клиентами, тут уже не до синхронности. Возможно, когда нибудь напишу об этом пост)
Уже четверг, а я всё ещё не придумал, чем мы займёмся на стриме в воскресенье, если не придумаю идею, стрима не будет)) Накидайте тем и это не обязательно ТГ бот
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👾1
Доброго всем утра)
Утро началось с ревью кода в неком) Собирался сделать это в среду, а добрался только сегодня. Ну и как обычно наоставлял кучу комментариев с правками)
Сегодня куча дел, одно из которых - дописать пост. Который выйдет через неделю (на следующую неделю уже есть интересный и возможно противоречивый пост).
Вот вам затравочка) И кто бы, что не говорил о множественном наследовании в питоне, но это очень удобно! Определил базовый класс, а потом от него унаследовал три других выполняющих свои задачи и не повторяешься.
Утро началось с ревью кода в неком) Собирался сделать это в среду, а добрался только сегодня. Ну и как обычно наоставлял кучу комментариев с правками)
Сегодня куча дел, одно из которых - дописать пост. Который выйдет через неделю (на следующую неделю уже есть интересный и возможно противоречивый пост).
Вот вам затравочка) И кто бы, что не говорил о множественном наследовании в питоне, но это очень удобно! Определил базовый класс, а потом от него унаследовал три других выполняющих свои задачи и не повторяешься.
🔥2❤1💯1
Всем привет)
Хватит работать, пора и отдохнуть) Как раз на ПК вышел порт Horizon Forbidden West)
А ещё, мы время от времени собираемся в голосовом чате Discrord, просто поболтать во время работы или игры.
Присоединяйтесь)
https://discord.gg/HwGXJSQE
Хватит работать, пора и отдохнуть) Как раз на ПК вышел порт Horizon Forbidden West)
А ещё, мы время от времени собираемся в голосовом чате Discrord, просто поболтать во время работы или игры.
Присоединяйтесь)
https://discord.gg/HwGXJSQE
🔥2
Всем привет)
Стрима сегодня не будет потому, что я не придумал тему)
В чате кота появилось несколько идей и чтобы они не потерялись, прошу продублировать их в комментариях к этому посту.
В течении недели буду собирать идеи и будем выбирать, что будем делать в следующее воскресенье.
Стрима сегодня не будет потому, что я не придумал тему)
В чате кота появилось несколько идей и чтобы они не потерялись, прошу продублировать их в комментариях к этому посту.
В течении недели буду собирать идеи и будем выбирать, что будем делать в следующее воскресенье.
🔥3
Доброе утро) Или уже день? Не важно, всем привет.
У вас бывает такое, что одно дело, второе, третье и всё как-то ну так. Без энтузиазма, рутина, а то и вовсе с апатией?
Вот у меня такое в последнее время достаточно часто.. Однако.
Вчера и сегодня я прям "машина" продуктивности.
Вчера с утра и до середины дня разбирался с вебсокетами и дружбой между Django и Vue. Сложно, непонятно, но интересно. Работы ещё много.. А зачем? Узнаете как нибудь потом))
Поспав до вечера я залез в наш "Некий проект". Смержил готовые задачи, исправил тексты ошибок, переделал сваггер и ещё по мелочи. Хорошо так перелопатив код подкинул задачек по мержу основной ветки всем остальным))
Сегодня среда, а значит пора выкладывать новый пост и меня так задолбала прошлая система постинга из Django в Telegram... Там всё было сделано "временно" и заставляло делать много двойной работы и если я ещё ладно, привык, но другие авторы страдают из-за этого. Собрался, подумал и перелопатил систему) Теперь основной текст поста идёт в тг) Никакой двойной работы, всё просто и удобно.
В общем, хорошо так потрудился)
Осталось сделать свою задачу на стажировке и домашку в курсе от KTS.
У вас бывает такое, что одно дело, второе, третье и всё как-то ну так. Без энтузиазма, рутина, а то и вовсе с апатией?
Вот у меня такое в последнее время достаточно часто.. Однако.
Вчера и сегодня я прям "машина" продуктивности.
Вчера с утра и до середины дня разбирался с вебсокетами и дружбой между Django и Vue. Сложно, непонятно, но интересно. Работы ещё много.. А зачем? Узнаете как нибудь потом))
Поспав до вечера я залез в наш "Некий проект". Смержил готовые задачи, исправил тексты ошибок, переделал сваггер и ещё по мелочи. Хорошо так перелопатив код подкинул задачек по мержу основной ветки всем остальным))
Сегодня среда, а значит пора выкладывать новый пост и меня так задолбала прошлая система постинга из Django в Telegram... Там всё было сделано "временно" и заставляло делать много двойной работы и если я ещё ладно, привык, но другие авторы страдают из-за этого. Собрался, подумал и перелопатил систему) Теперь основной текст поста идёт в тг) Никакой двойной работы, всё просто и удобно.
В общем, хорошо так потрудился)
Осталось сделать свою задачу на стажировке и домашку в курсе от KTS.
👍2🔥2❤1
Всем доброй ночи)
Рассказал другу о том, что у меня нет идей для стримов и подумав, что бы можно было такое "изобрести", пришла идея бота для Discord.
По началу простого, что бы разобраться в логике, а затем возможно развить во что-то.
Как вам идея?
Рассказал другу о том, что у меня нет идей для стримов и подумав, что бы можно было такое "изобрести", пришла идея бота для Discord.
По началу простого, что бы разобраться в логике, а затем возможно развить во что-то.
Как вам идея?
❤1🔥1
Всем доброго вечера!))
После напряжённого дня кодинга на стажировке, нужен отдых.
Как раз сегодня стартует новая лига в Path of Exile!
Приглашаю всех на стрим: https://youtube.com/live/0wwTWryKO7U?feature=share
А те, кто знает про наш дискорд, могут присоединиться к беседе)
После напряжённого дня кодинга на стажировке, нужен отдых.
Как раз сегодня стартует новая лига в Path of Exile!
Приглашаю всех на стрим: https://youtube.com/live/0wwTWryKO7U?feature=share
А те, кто знает про наш дискорд, могут присоединиться к беседе)
🔥2
Всем привет)
Выходные прошли как-то быстро и с головной болью, даже толком не отдохнул.
А неделя началась с работы)
Сегодня делал разное, например, разбирались как на сайт школы внедрить поддержку для слабовидящих и это жесть.
Ещё обновил свою програмку под актуальную лигу в игре Path of Exile. Кому интересно: https://github.com/proDreams/PoE-IPC
Уже почти ночь, а дел ещё не мало на сегодня(
Выходные прошли как-то быстро и с головной болью, даже толком не отдохнул.
А неделя началась с работы)
Сегодня делал разное, например, разбирались как на сайт школы внедрить поддержку для слабовидящих и это жесть.
Ещё обновил свою програмку под актуальную лигу в игре Path of Exile. Кому интересно: https://github.com/proDreams/PoE-IPC
Уже почти ночь, а дел ещё не мало на сегодня(
🔥3
Всем привет!
За несколько дней произошло несколько событий.
Начнём с главного.
19-го января у моей группы в GB прошла итоговая аттестация (защита диплома). Нам обещали в течении месяца выслать диплом и номер его отслеживания... Видимо в GB месяц длится иначе, т.к. диплом я и мои одногруппники начали получать только с этой недели... Получив оповещение от Почты России о прибытии письма. 2.5 месяца на изготовление, отправки, но прикол не в этом! Теперь они предоставляют дипломы в виде двух листочков, без корочки. Ну да ладно, я уже на WB выбрал обложку)
И вот казалось бы, диплом, наконец-то эпопея длительностью в 1.5 года + 2.5 месяца ожидания диплома подошли к концу, надо радоваться... А радости то нет. И ощущения "дипломированного специалиста" тоже. Такие дела.
Второе "событие", опишу позже. там тоже есть приколы)
За несколько дней произошло несколько событий.
Начнём с главного.
19-го января у моей группы в GB прошла итоговая аттестация (защита диплома). Нам обещали в течении месяца выслать диплом и номер его отслеживания... Видимо в GB месяц длится иначе, т.к. диплом я и мои одногруппники начали получать только с этой недели... Получив оповещение от Почты России о прибытии письма. 2.5 месяца на изготовление, отправки, но прикол не в этом! Теперь они предоставляют дипломы в виде двух листочков, без корочки. Ну да ладно, я уже на WB выбрал обложку)
И вот казалось бы, диплом, наконец-то эпопея длительностью в 1.5 года + 2.5 месяца ожидания диплома подошли к концу, надо радоваться... А радости то нет. И ощущения "дипломированного специалиста" тоже. Такие дела.
Второе "событие", опишу позже. там тоже есть приколы)
🔥4👍2
Всем привет)
Немного заматался и забыл рассказать про второе "событие", вернее куллстори)
Сказ о том, как я впервые покупал что-то на Сбер Мега Маркете.
Сбер часто присылает купоны на скидки в своих сервисах, чаще всего это на СберМаркет, который с доставкой жрачки, но тут внезапно прислал весьма приятный купон для своего маркетплейса МегаМаркет. Скидка была солидная -2000р при покупке на 2050р. И я подумал, что это отличныйй повод купить новый микрофон.
Зашёл на сайт, нашёл подходящий микрофон Fifine A6V и стойку к нему. Вышло всё на 4100р, с купоном 2100р всего.
Преисполненный "халлявой", 19-го марта сделал заказ... И тут начались приколы.
Во время оформления заказа, дата доставки была 23-е марта, но после оплаты сдвинулась на 29-е. Ну думаю, хрен с ним, ждём.
Наступило 29-е число ииии.... ничего. Заказ не привезли. Прислали жалобную смс-ку, мол "не успеваем, простити и ждити", чтож ждём.
31-го числа таки позвонил курьер и сообщил, что везёт заказ и привёс его. Микрофон, без стойки. Стойку привезёт позже кто-то другой. Забавно, да?
Микрофон конечно хорошо, но у меня на столе не так много места для него, собственно поэтому и брал сразу стойку. И вот в эту пятницу, 5-го апреля, привезли стойку.
Всё хорошо и работает, но после WB, такие сроки доставки и не следование им, вымораживают.
Немного заматался и забыл рассказать про второе "событие", вернее куллстори)
Сказ о том, как я впервые покупал что-то на Сбер Мега Маркете.
Сбер часто присылает купоны на скидки в своих сервисах, чаще всего это на СберМаркет, который с доставкой жрачки, но тут внезапно прислал весьма приятный купон для своего маркетплейса МегаМаркет. Скидка была солидная -2000р при покупке на 2050р. И я подумал, что это отличныйй повод купить новый микрофон.
Зашёл на сайт, нашёл подходящий микрофон Fifine A6V и стойку к нему. Вышло всё на 4100р, с купоном 2100р всего.
Преисполненный "халлявой", 19-го марта сделал заказ... И тут начались приколы.
Во время оформления заказа, дата доставки была 23-е марта, но после оплаты сдвинулась на 29-е. Ну думаю, хрен с ним, ждём.
Наступило 29-е число ииии.... ничего. Заказ не привезли. Прислали жалобную смс-ку, мол "не успеваем, простити и ждити", чтож ждём.
31-го числа таки позвонил курьер и сообщил, что везёт заказ и привёс его. Микрофон, без стойки. Стойку привезёт позже кто-то другой. Забавно, да?
Микрофон конечно хорошо, но у меня на столе не так много места для него, собственно поэтому и брал сразу стойку. И вот в эту пятницу, 5-го апреля, привезли стойку.
Всё хорошо и работает, но после WB, такие сроки доставки и не следование им, вымораживают.
🔥2😱1
Всем привет!
Уже в эту субботу, 20го апреля состоится финальное демо проектов на стажировке в LAD Academy.
Почти шесть месяцев ушло на разработку MVP проекта LAPA.
Приглашаю всех желающих на нашу презентацию.
Мероприятие пройдёт в Google Meet. Начало в 10:00 по МСК и до 17-ти часов.
Презентация проекта LAPA запланировано на 11:45-12:30.
Ссылка на мероприятие: https://meet.google.com/zhv-kmcb-ros
P.S. Пост про стажировку будет, как только разберусь с делами)
Уже в эту субботу, 20го апреля состоится финальное демо проектов на стажировке в LAD Academy.
Почти шесть месяцев ушло на разработку MVP проекта LAPA.
Приглашаю всех желающих на нашу презентацию.
Мероприятие пройдёт в Google Meet. Начало в 10:00 по МСК и до 17-ти часов.
Презентация проекта LAPA запланировано на 11:45-12:30.
Ссылка на мероприятие: https://meet.google.com/zhv-kmcb-ros
P.S. Пост про стажировку будет, как только разберусь с делами)
🔥3
Всем привет) Побомблю чутка вам тут с утреца)
Уже давненько витают планы по переделыванию сайта салфетки. Один из таких - отойти от шаблонов Django в пользу Frontend JavaScript-фреймворка.
Я немного знаком с Vue.js, среди вариантов ещё был Angular и популярный Rect.js... Про последний и буду бомбить.
Работаю над проектом в основе которого Node.js на бэке и Rect.js на фронте. И какой же реакт неудобный.
Как обычно происходит получение данных с сервера? Делается запрос и выводится результат.
Как это происходит в реакте? В одном файле заводим константу урла для запроса. Во втором файле делаем запрос, возвращающий
И вот засада. Компоненты, это не функции и классы, это константы и хук подключается в ней тоже константой. Его нельзя "положить" внутри функции, что бы по нажатию кнопки вызвать, он срабатывает сразу при отрисовке компонента.
И тут таится вторая засада! Компонент отрисовывается, хук вызывается, но данные он ещё не успел получить и, что он выводит? Чёртов
Это капец как усложняет работу и понимание того, что вообще происходит.
В итоге я для себя решил, что ни строчки кода реакта не будет в моём проекте. Уж лучше на Vue, он понятный и удобный.
Зато вот Node.js приятно удивил. Это самый обычный бэк. Да на JavaScript, вместо привычного мне Python'а, но бэк, он и в африке - бэк. Стандартная логика, стандартное API, БД на Mongo. Всё как везде.
P.S. Чукча не фронтэндер, но выговориться хотелось))
Уже давненько витают планы по переделыванию сайта салфетки. Один из таких - отойти от шаблонов Django в пользу Frontend JavaScript-фреймворка.
Я немного знаком с Vue.js, среди вариантов ещё был Angular и популярный Rect.js... Про последний и буду бомбить.
Работаю над проектом в основе которого Node.js на бэке и Rect.js на фронте. И какой же реакт неудобный.
Как обычно происходит получение данных с сервера? Делается запрос и выводится результат.
Как это происходит в реакте? В одном файле заводим константу урла для запроса. Во втором файле делаем запрос, возвращающий
Promise
, так называемое "обещание" вернуть данные указанного типа (тут используется TypeScript). В третьем файле располагается хук, для обработки полученных данных. В четвёртом файле, непосредственно в компоненте подключается хук. И вот засада. Компоненты, это не функции и классы, это константы и хук подключается в ней тоже константой. Его нельзя "положить" внутри функции, что бы по нажатию кнопки вызвать, он срабатывает сразу при отрисовке компонента.
И тут таится вторая засада! Компонент отрисовывается, хук вызывается, но данные он ещё не успел получить и, что он выводит? Чёртов
undefined
! Приходится городить костыли (с моей точки зрения, костыли), чтобы получить данные и вывести их.Это капец как усложняет работу и понимание того, что вообще происходит.
В итоге я для себя решил, что ни строчки кода реакта не будет в моём проекте. Уж лучше на Vue, он понятный и удобный.
Зато вот Node.js приятно удивил. Это самый обычный бэк. Да на JavaScript, вместо привычного мне Python'а, но бэк, он и в африке - бэк. Стандартная логика, стандартное API, БД на Mongo. Всё как везде.
P.S. Чукча не фронтэндер, но выговориться хотелось))
😱3🤯2👍1😁1
Всем привет)
Стажировка официально всё, закончилась.
На этой или следующей неделе постараюсь написать пост по оставшимся месяцам работы над ЛАПой.
А пока, можете посмотреть наше выступление на финальном демо:
https://youtu.be/s4ig6J7qXfg?si=t1f2g9GhOP7RLeZl
Стажировка официально всё, закончилась.
На этой или следующей неделе постараюсь написать пост по оставшимся месяцам работы над ЛАПой.
А пока, можете посмотреть наше выступление на финальном демо:
https://youtu.be/s4ig6J7qXfg?si=t1f2g9GhOP7RLeZl
🍾2👍1😢1😭1
Всем привет)
Закончилась эпопея с Node и React JS. Интересно было поработать с другим языком над проектом.
Но по питону немного соскучился)
И тут мне написал приятель, что ему нужен тг бот для пересылки постов из Telegram в базу-данных Notion.
API ноушена ужасно неудобное. Сперва оно не хотело никак работать с указанной мной базой-данных. Затем было непонятно в каком виде оно что принимает...
В итоге, ноушен сдался и заработал)
Принцип работы прост:
1. Пользователь пересылает сообщение в бота.
2. Аиограм получает сообщение и начинает его парсить.
Если есть изображение в посте - отправляем его на Imgur.
Если в посте есть ссылки, то создаётся их список.
3. Формируются данные для отправки и отправляются в ноушен.
4. Бот отвечает на сообщение реакцией 👌, сообщая, что задача выполнена.
Код доступен на моём гите: https://git.pressanybutton.ru/proDream/Notion_Bot
Закончилась эпопея с Node и React JS. Интересно было поработать с другим языком над проектом.
Но по питону немного соскучился)
И тут мне написал приятель, что ему нужен тг бот для пересылки постов из Telegram в базу-данных Notion.
API ноушена ужасно неудобное. Сперва оно не хотело никак работать с указанной мной базой-данных. Затем было непонятно в каком виде оно что принимает...
В итоге, ноушен сдался и заработал)
Принцип работы прост:
1. Пользователь пересылает сообщение в бота.
2. Аиограм получает сообщение и начинает его парсить.
Если есть изображение в посте - отправляем его на Imgur.
Если в посте есть ссылки, то создаётся их список.
3. Формируются данные для отправки и отправляются в ноушен.
4. Бот отвечает на сообщение реакцией 👌, сообщая, что задача выполнена.
Код доступен на моём гите: https://git.pressanybutton.ru/proDream/Notion_Bot
🔥5👍2🍾1
Всем привет.
Начал недавно откликаться на вакансии с ххру. Получил уже несколько отказов, но сейчас не об этом. Одна из компаний отправила тестовое задание. Сейчас, конечно, вообще тренд на то, что бы байкотировать тестовые, но мне стало интересно. Пока я не прочёл тестовое.
Нужно реализовать парсер магазинов на Ozon.ru. Всё это обернуть в API на DRF. Вишенка на торте - ко всему этому прикрутить тг-бота для отправки уведомления об окончании парсинга и вывода результатов последнего парсинга.
Звучит как-то не тестово, не правда ли?
Текст тестового можете прочесть тут.
Когда я рассказал об этом, мне сразу несколько человек заявили, что это развод и они никого на работу не возьмут, а просто "позаимствуют" хорошие решения из кода.
Но само задания мне показалось интересным и я решил его сделать, не для них, а для себя. Написать апишку, подключить бота и всё такое, ума много не надо, это чуть ли не банальности... Сложность возникла с парсингом, а именно с защитой от парсинга на сайте озона.
В ТЗ упомянут
В итоге тестовое было сделано и.... А не будет кода) Я не хочу давать им халявные способы обхода. У них и так на гитхабе полно желающих...
Отправил им ссылку на репозиторий с ридми и скриншотиками:
https://github.com/proDreams/proDreams-test-o-parser
Жаль, конечно, что код уйдёт "в ящик", но было интересно)
Начал недавно откликаться на вакансии с ххру. Получил уже несколько отказов, но сейчас не об этом. Одна из компаний отправила тестовое задание. Сейчас, конечно, вообще тренд на то, что бы байкотировать тестовые, но мне стало интересно. Пока я не прочёл тестовое.
Нужно реализовать парсер магазинов на Ozon.ru. Всё это обернуть в API на DRF. Вишенка на торте - ко всему этому прикрутить тг-бота для отправки уведомления об окончании парсинга и вывода результатов последнего парсинга.
Звучит как-то не тестово, не правда ли?
Текст тестового можете прочесть тут.
Когда я рассказал об этом, мне сразу несколько человек заявили, что это развод и они никого на работу не возьмут, а просто "позаимствуют" хорошие решения из кода.
Но само задания мне показалось интересным и я решил его сделать, не для них, а для себя. Написать апишку, подключить бота и всё такое, ума много не надо, это чуть ли не банальности... Сложность возникла с парсингом, а именно с защитой от парсинга на сайте озона.
В ТЗ упомянут
Beautiful Soup
, но как парсить им, если на сайте защита и для обхода подойдёт только модифицированный селениум? И то с оговорками? Вот просидев над этим вопросом денёк, я сперва нашёл способ обхода защиты, как раз таки селениумом, а потом мне подсказали идею, развив которую я смог отказаться от тяжёлого селениума в пользу лёгкого супчика)В итоге тестовое было сделано и.... А не будет кода) Я не хочу давать им халявные способы обхода. У них и так на гитхабе полно желающих...
Отправил им ссылку на репозиторий с ридми и скриншотиками:
https://github.com/proDreams/proDreams-test-o-parser
Жаль, конечно, что код уйдёт "в ящик", но было интересно)
🔥7❤1👏1