Desktop-приложение на Python для автоматизации публикации объявлений на Bazoš.sk
27 000 UAHПроект: Desktop-приложение на Python для автоматизации публикации объявлений на Bazoš.skТехнологии: Python, Playwright, PySide6, SQLite, Excel import/exportСтоимость второго этапа: 27 000 UAHСрок выполнения: 12–14 рабочих дней после резервирования оплаты на Сейфі і отримання чеської PSČ для probe Bazoš.cz.
1. Цель второго этапа
Расширить рабочую MVP-версию до полноценного production-инструмента для ежедневной работы менеджера на Bazoš.sk.
Stage 2 закрывает все ключевые сценарии регулярной работы: — автоматическая ротация и перепубликация объявлений; — запуск работы по расписанию без участия пользователя; — мониторинг состояния опубликованных объявлений; — управление группами аккаунтов; — двусторонняя синхронизация результатов с Excel; — поддержка любых «простых» категорий Bazoš.sk через универсальный движок (вместо одной фиксированной категории Notebooky из Stage 1).
После Stage 2 менеджер получает инструмент, который требует минимального ручного вмешательства: настроить расписание один раз → бот сам публикует, обновляет, мониторит и пишет результаты обратно в Excel.
2. Что входит во второй этап
2.1 Модуль ротации / автоматической перепубликации
— настраиваемый интервал ротации в днях: • глобальный дефолт по умолчанию 3 дня; • возможность переопределить интервал на конкретный аккаунт (например, для ноутбуков 1 день, для мелочёвки 3 дня); — логика ротации: удаление старого объявления на Bazoš → публикация нового с теми же данными (тот же title/description/фото/PSČ) → обновление ссылки в БД и Excel; — кнопка «Оновити обраний акаунт»: позволяет менеджеру вручную запустить ротацию по одному конкретному аккаунту, не затрагивая остальные; — новый статус
reserveдля исключения товаров из ротации: • выставляется вручную в приложении (правый клик → «Зарезервувати») или через колонку в Excel; • такие товары бот пропускает при ротации до снятия статуса; — контроль лимита 50 активных объявлений на аккаунт: • перед публикацией бот проверяет количество активных объявлений на аккаунте; • если лимит достигнут → ротация по этому аккаунту останавливается, в лог пишется уведомление, менеджер вручную решает что делать (удалить старые объявления или временно отключить аккаунт); • автоматического удаления старых объявлений бот не делает.2.2 Модуль расписания / планировщика
— расписание на каждый аккаунт отдельно с двумя режимами: • конкретное время: например, аккаунт #1 публикует в 09:00, 13:00, 17:00; • диапазон с интервалом: например, с 09:00 до 18:00 каждые 60 минут; — автозапуск ротации по расписанию: приложение само в указанное время поднимает очередь по аккаунту, проходит по pending-товарам, делает паузы между публикациями и завершает работу; — выходные/праздники не учитываются — логика одинаковая каждый день; — просмотр расписания на вкладке «Налаштування» в виде таблицы: аккаунт → ближайший запуск → следующий запуск; — возможность временно отключить расписание по аккаунту (галочка «активно/неактивно»).
2.3 Модуль мониторинга состояния объявлений
— периодическая проверка URL опубликованных объявлений в фоне; — частота проверки настраивается в UI (по умолчанию раз в 12 часов); — для каждого URL бот определяет одно из состояний: •
active— объявление доступно и активно; •inactive— объявление было удалено Bazoš, заблокировано, либо ссылка возвращает 404; — обновление статуса товара в приложении: новый статусinactive, отдельный фильтр на вкладке «Товари» для быстрого выбора всех неактивных; — журнал изменений по каждому товару: когда было опубликовано → когда стало неактивным → причина (если её можно определить по ответу Bazoš); — бот не делает автоматическую перепубликацию неактивных объявлений — это решение менеджера: он может выделить такие товары и нажать «Перезапустити обрані».2.4 Модуль группировки аккаунтов
— произвольные пользовательские группы аккаунтов с собственными названиями (например, «Ноутбуки», «Мелка електроніка», «Авто», «Побутова техніка»); — на старте конфигурируется 2 группы, возможность добавлять новые без ограничения; — один аккаунт принадлежит ровно одной группе (не нескольким); — фильтр по группам на вкладках «Товари», «Акаунти», «Черга»; — старт/стоп очереди по конкретной группе: возможность запустить публикацию только для аккаунтов выбранной группы, не затрагивая остальные; — конфигурация групп сохраняется в БД, переносится вместе с проектом при копировании на другой ПК.
2.5 Модуль двусторонней синхронизации с Excel
— кнопка «Записати результати в Excel» на вкладке «Товари»: • выбирается исходный Excel-файл (либо запоминается последний использованный); • бот обновляет в этом файле колонки:
status,published_url,published_at,error_comment; • запись только в существующие строки — структура файла не ломается; — обработка проданных/удалённых товаров: • товары со статусомsoldилиinactiveудаляются из Excel-файла (соответствующая строка удаляется); • опционально можно включить «не удалять, помечать статусом» — переключается в настройках; — колонкаproduct_idрекомендуется к использованию как якорь для надёжного двустороннего матчинга (если её нет — fallback на title); — синхронизация запускается только по кнопке (автоматического таймера в Stage 2 нет — добавляется при необходимости в следующих этапах).2.6 Универсальный движок «простых категорий» Bazoš.sk
В Stage 1 поддерживалась только категория PC → Notebooky. В Stage 2 реализуется универсальный publisher, работающий с любой «простой» подкатегорией Bazoš.sk без хардкода:
— Excel поддерживает любые значения в колонках
category/subcategory; — бот автоматически резолвит их в правильный URL раздела + выбор подкатегории в форме; — «простая категория» = подкатегория с базовой формой публикации (title, description, price, PSC, фото, контакт, пароль), без дополнительных специфических полей.Гарантированное покрытие в Stage 2:
— все 20 подкатегорий из файла
Palets.xlsx: • PC → Hard disky/SSD, Herné konzoly, Herné zariadenia • Elektro → Vysávače, Televízory, Projektory, Hifi/Rádiá, Vysielačky, Ostatné audio video, Ostatné drobné, Ručné šľahače/Mixéry • Foto → Videokamery • Mobily → Ostatné značky • Deti → Hračky, Nábytok pre deti • Dom a záhrada → Záhradná technika, Ostatné • Nábytok → Lampy, osvetlenie • Auto → Náhradné diely užitková — простые подкатегории Auto/Motocykle, явно упомянутые заказчиком: Náhradné diely, Tuning, Oblečenie, Ostatné (при условии что probe формы подтверждает отсутствие специфических полей); — с высокой вероятностью работает любая другая простая подкатегория в разделах PC, Elektro, Mobily, Foto, Deti, Nábytok, Dom a záhrada — поскольку движок универсальный, новые подкатегории добавляются правкой одной строки маппинга без переделки логики; — в течение 5 рабочих дней после сдачи Stage 2 заказчик может протестировать произвольную простую подкатегорию — если что-то не работает, я закрываю это бесплатно в рамках периода багфиксов.2.7 Probe Bazoš.cz для Stage 3 (бонус, без отдельной оплаты)
В рамках Stage 2 я провожу короткий probe (1–2 часа) чешского сайта Bazoš.cz: — проверяю что словацкий аккаунт + словацкое прокси публикует на .cz без триггера повторной верификации; — проверяю что форма публикации идентична .sk (селекторы, поля, Dropzone); — по результатам фиксирую финальную цифру Stage 3 в дополнении к этому ТЗ до старта Stage 3.
Это не входит в стоимость Stage 2 как отдельная работа — побочный результат разработки универсального движка категорий.
2.8 Включаемый в период багфиксов Stage 1 пункт
В рамках периода багфиксов первого этапа (то есть до начала Stage 2 и без отдельной оплаты):
— добавление колонки
product_idв UI на вкладке «Товари» для удобного поиска и идентификации товаров; — значения колонки берутся из поляproduct_idв Excel при импорте (как уже вPalets.xlsxс форматом#П001,#П004,#П005).3. Что НЕ входит во второй этап
Следующие пункты согласованы как отдельные этапы или не входящие в проект вообще:
→ Stage 3 (Bazoš.cz):— полноценная публикация на Bazoš.cz с поддержкой всех 5 модулей Stage 2; — параллельный site-модуль
app/sites/bazos_cz/; — расширение Excel для выбора site публикации; — live-тест на чешских PSČ; — .→ Stage 4 (масштабирование и сложные категории):— параллельная работа более 10 аккаунтов на одном ПК (пул браузерных воркеров, параллельные очереди, оптимизация GUI); — поддержка категорий с уникальными полями: Motocykle/Skútre (с объёмом двигателя, годом), Auto/Cars (полные авто), Reality (недвижимость с метражом) — если потребуются; —
→ Stage 5 (multi-PC, опционально):— работа двух и более ПК с общей БД (PostgreSQL) для централизованного управления аккаунтами и публикациями; — синхронизация состояния между instance-ами; —
Если для двух ПК достаточно независимой работы (разные наборы аккаунтов на каждом ПК, без синка) — Stage 5 не нужен.
→ Не входят в проект вообще (по согласованию с заказчиком): — платное продвижение / topovanie / Komerčný inzerát; — антидетект / эмуляция «отпечатков» браузера сверх текущей логики; — аналитика, отчёты, дашборды по эффективности объявлений; — категории с принципиально другими полями формы (полноценные авто, недвижимость).
4. Критерии приёмки Stage 2
Приёмка проводится по чек-листу:
Модуль ротации:— [ ] настраивается интервал ротации глобально и на аккаунт; — [ ] кнопка «Оновити обраний акаунт» запускает ротацию только по выбранному аккаунту; — [ ] товары со статусом
reserveпропускаются; — [ ] при достижении лимита 50 объявлений ротация по аккаунту останавливается и пишется в лог.Модуль расписания:— [ ] на аккаунт можно задать расписание в двух режимах (конкретное время / диапазон с интервалом); — [ ] приложение само запускает ротацию по расписанию; — [ ] таблица расписания на вкладке «Налаштування» отображает ближайшие запуски.
Модуль мониторинга:— [ ] периодическая проверка URL запускается по таймеру; — [ ] частота проверки настраивается в UI; — [ ] неактивные объявления получают статус
inactive; — [ ] на вкладке «Товари» работает фильтр по статусуinactive.Модуль групп:— [ ] можно создать минимум 2 группы и привязать к ним аккаунты; — [ ] фильтры по группам работают на всех вкладках; — [ ] старт/стоп очереди по группе запускает публикацию только аккаунтов этой группы.
Модуль Excel-синхронизации:— [ ] кнопка «Записати результати в Excel» обновляет нужные колонки в исходном файле; — [ ] проданные/удалённые товары удаляются из Excel (по настройке); — [ ] product_id корректно матчится между приложением и Excel.
Универсальный движок категорий:— [ ] публикация в любую из 20 п
Отзыв заказчика о сотрудничестве с Микитой С.
Desktop-приложение на Python для автоматизации публикации объявлений на Bazoš.skВ процессе работы и тестирования находилось немало различных нюансов и багов, что вполне нормально для такого объёмного проекта. Все замечания исправлялись быстро, разработчик всегда был на связи и оперативно реагировал на обратную связь.
В итоге весь согласованный функционал работает корректно, результат соответствует ожиданиям. Сотрудничеством доволен.
Отзыв фрилансера о сотрудничестве с Вадимом Гончаровым
Desktop-приложение на Python для автоматизации публикации объявлений на Bazoš.skС Вадимом работали над Bazoš Publisher — десктопным приложением под Windows для автоматической публикации и ротации объявлений на Bazoš.sk. Проект вырос из простого MVP в полноценный инструмент: импорт и двусторонняя синхронизация товаров из Excel, мульти-аккаунтная публикация с автоматической ротацией и перепубликацией, загрузка фото, очередь с паузой/остановкой, групповые расписания (round-robin + интервалы), мониторинг живых объявлений, авто-бэкап базы и аккуратная анти-детект логика, чтобы аккаунты жили долго.
Отдельно отмечу самого Вадима как заказчика: чёткое ТЗ, очень предметная обратная связь от него и его менеджера, реальное тестирование на боевых данных и быстрые ответы по каждому вопросу. Благодаря этому мы прошли больше десятка итераций, отполировали каждую мелочь и довели продукт до стабильного состояния (270+ автотестов, всё зелёное). Оплата — вовремя и без вопросов.
Было приятно и продуктивно работать. Уже договорились о следующем этапе (расширение на Bazoš.cz). Рекомендую как надёжного и адекватного партнёра — побольше бы таких заказчиков. Спасибо за доверие!
-
Вадиму, вижу здесь не просто автоматизацию, а рабочий инструмент на каждый день: ротация, планировщик, мониторинг и Excel-синхронизация должны работать без ручных правок. Я уже делал Python-автоматизацию, парсинг и интеграции с БД и внешними сервисами, поэтому быстро погружусь в вашу MVP-логику, Playwright и SQLite. Отдельно уделю внимание универсальным категориям и стабильности очередей. Готов обсудить детали и риски.
-
СМотрите, тут нюанс - если этап 1 уже реально работает и код можно расширять без переписывания основы, то 27 000 UAH и 12-14 рабочих дней выглядят рабочей оценкой для этапа 2. Если после ревизии окажется, что рабочая версия держится на временных решениях, я бы сделал проще - короткая техпроверка кода в рамках биржи, потом финальная разбивка по модулям.
По реализации я бы не усложнял - отдельные службы внутри приложения для ротации, расписания, мониторинга URL, групп аккаунтов и синхронизации Excel. Playwright работает через сохраненные профили, SQLite хранит статусы и историю, PySide6 показывает очередь и ошибки так, чтобы менеджер видел не магию, а управляемый инструмент. По ощущениям, кажетя, главный риск не в кнопках, а в стабильности аккаунтов, лимитах и поведении Bazoš.cz.
Из похожего опыта Ingello
> https://business.ingello.com/forma-bpm - автоматизация бизнес-процессов, статусы, очереди, правила и журнал действий
> https://business.ingello.com/forma-crm - учетные интерфейсы, роли, фильтры, рабочие таблицы
> https://business.ingello.com/vorfahr - косвенно близко по автоматизации товарных сценариев и системной логике
… Главный профиль по таким системам - https://systems-fl.ingello.com
От вас нужны код этапа 1, тестовый Excel, набор тестовых аккаунтов, прокси если они используются, чешская PSČ для probe Bazoš.cz и список категорий, которые считаем обязательными для приемки. Доступы можно передать в рамках правил биржи.
Уточню 2 вещи, чтобы не играть в архитектурный шаманизм =)
> в этапе 1 уже есть стабильное хранение сессий аккаунтов или это нужно усиливать
> по sold и inactive точно удаляем строки из Excel или по умолчанию лучше помечать статусом
-
Привет, я работал над Desktop-приложением для автоматизации рекламы на OLX с Python + Selenium, где обрабатывали 500+ объявлений ежедневно с ротацией по 15 аккаунтам и автоматическим расписанием. Очень похоже на ваш проект Bazoš.sk с теми же вызовами управления аккаунтами!
Интересно, планируете ли вы интегрировать систему прокси для работы с разными регионами Словакии, учитывая, что используете PSČ для локализации объявлений?
Предлагаю связаться, я бесплатно проконсультирую вас с технической стороны и составим план разработки + расскажу о моей команде!
-
1872 9 0 Доброго дня.
ТЗ прочитав повністю. Подібні проекти вже робили, досвід є.
Стек Python + Playwright + PySide6 + SQLite + Excel наш профільний. Автоматизація з anti-bot обходом і мультиаккаунтністю робили на кількох проектах.
Декілька моментів по реалізації:
Розклад. APScheduler підходить, але для PySide6 краще QTimer для основного циклу плюс окремий thread для публікацій. Не блокує UI під час роботи бота.
… Моніторинг URL. При перевірці варто розрізняти типи неактивності: видалено модерацією, видалено за часом, тимчасова помилка мережі. Це дає менеджеру зрозуміти причину.
Універсальний движок. Маппінг category/subcategory через окремий JSON або YAML файл, без перекомпіляції. Менеджер сам може додавати нові підкатегорії.
Excel sync. Матчинг через product_id як основний ключ, title як fallback. При записі через openpyxl зі збереженням форматування файлу.
Ліміт 50 об'яв. Крім логу варто зробити push-уведомлення в Telegram або email менеджеру, щоб не чекати поки відкриє додаток.
Probe Bazoš.cz готовий зробити паралельно з основною розробкою.
Перед стартом готовий показати прототип одного блоку (розклад або моніторинг URL) щоб побачили підхід до коду.
Чекаю в особистих.
-
6589 28 0 Задача понятна: расширить MVP до полноценного production-инструмента с ротацией, планировщиком, мониторингом и двусторонним Excel-синком через Playwright + PySide6 + SQLite.
Стек знаком, реализую все модули со Stage 2: ротация с интервалами на аккаунт, статус reserve, контроль лимита 50 объявлений, расписание в двух режимах, мониторинг состояния, универсальный движок категорий.
12–14 рабочих дней, 27 000 UAH.
Есть ли уже схема БД и UI-макеты с первого этапа, или начинаем с нуля?
-
726 9 1 Здравствуйте! Ваш проект выглядит очень интересным. Я готов начать работу немедленно и обеспечить высокое качество.
-
11968 32 0 3 Доброго дня! Разрабатываю на Python, React/Node.js выполнял похожие проекты, готов к сотрудничеству.
-
2463 23 1 1 Здравствуйте. В основном все, что описано, реализуем с указанием задействованных технологий, но все равно нужно ознакомиться с кодом перед выполнением, чтобы не тратить зря время, если сроки критические.
-
196 НУ тут скорее так - по сроку 12-14 рабочих дней и бюджету 27 000 грн для этапа 2 это выглядит реалистично.
я бы сделал проще - довести MVP до рабочего инструмента менеджера через отдельные модули ротации, расписания, мониторинга, групп аккаунтов, синхронизации с Excel и универсального движка простых категорий Bazoš.sk.
важный нюанс вижу - при лимите 50 активных объявлений бот не должен сам удалять старые публикации, а должен остановить очередь по аккаунту и показать понятный лог.
по ощущениям, основная зона риска тут не интерфейс, а стабильная автоматизаци форм Bazoš, статусы объявлений и аккуратное сопоставление Excel по product_id.
> уточню 2 момента
… > чешская PSČ для probe Bazoš.cz уже есть или её нужно будет получить до начала проверки
> в Palets.xlsx product_id есть у всех строк или часть товаров всё ещё нужно будет матчить по title
> похожие кейсы Ingello
> https://business.ingello.com/vorfahr - близко по автоматизации операций, очередям и логике публикации через внешние сервисы
> https://business.ingello.com/forma-bpm - близко по статусам, рабочим процессам, журналам и управлению задачами менеджера
> https://business.ingello.com/prime-eva - косвенно близко по товарным данным, интеграциям и операционной автоматизации
нужны доступы к тестовым аккаунтам Bazoš.sk, прокси, исходный Excel-файл и текущая MVP-версия.
главная страница команды - https://systems-fl.ingello.com
в целом норм, можно не усложнять - сначала закрываем стабильный этап 2, а Bazoš.cz оставляем как отдельный подтверждённый этап после probe =)
Актуальные фриланс-проекты в категории Python
Разработка программного обеспечения для управления iPhone через USB-кабель с ПК
10 000 UAH
Необходимо разработать программу для Windows, которая позволяет подключать iPhone с jailbreak через USB-кабель и управлять им с компьютера. Основной функционал: Подключение iPhone через USB. Программа должна быстро распознавать подключенный iPhone и работать через кабель,… C и C++, Python ∙ 16 часов 59 минут назад ∙ 13 ставок |
BuzzPost автоматизация Facebook под ИзраильПроект уже есть и он работает - задача решить вопрос по ограничению фб, при количестве постов в час более 3-4 (с 7 утра до 12 ночи) аккаунты клиентов ограничиваются фб. сайт - https://buzzpost.co.il/ Также поискать дыры в логике и в самом проекте и поправить их, опять же логика… Python, Работа с клиентами ∙ 1 день 13 часов назад ∙ 12 ставок |
Создание Тик-ток фермы с генерацией дохода
27 000 UAH
в поиске человека, который может написать софт, для фермы тик ток, чтобы мы смогли генерировать трафик, получать доход. Ищем готовое решение с полным циклом. Python, Разработка ботов ∙ 4 дня 8 часов назад ∙ 16 ставок |
AI Commenting Platform для TikTok и Instagram.Цель проекта Разработать систему, которая позволяет управлять большим количеством аккаунтов TikTok и Instagram и автоматически публиковать релевантные комментарии под выбранными видео с использованием ИИ. Основной функционал1. Управление аккаунтами Необходимо реализовать… AI и машинное обучение, Python ∙ 5 дней 15 часов назад ∙ 23 ставки |
Построить модель классификации клиентов1. Есть данные клиентов в Mongo/SQL (примерно 20 000 записей с сырыми данными). 2. Необходимо на их основе построить фичи и модель классификации клиентов на поведенческие группы. 3. Проект выполнить на Python. AI и машинное обучение, Python ∙ 7 дней 9 часов назад ∙ 46 ставок |