Skip to content

offjext/...2882

Repository files navigation

FunPayBot

Многофункциональный бот-автоматизация для продавцов FunPay.

Репозиторий на GitHub можно переименовать вручную в funpay-bot (Settings → General → Repository name) — у агента нет прав на rename.

Возможности

Модуль Описание
Автоподнятие лотов Циклический POST /lots/raise по категориям из конфига
Вечный онлайн Пинг /runner/, статус «в сети»
Автоответы Ответы по ключевым словам в чатах
Автовыдача Выдача товаров из файлов склада по маске названия заказа
Приветствие Сообщение покупателю после нового заказа
Напоминание об отзыве Отложенное сообщение через N минут
Управление лотами Список, цена, вкл/выкл
Конкуренты Цены в подкатегории + опциональный автоандеркат
Баланс / заказы / чаты CLI-утилиты для быстрых проверок
Интерактивное меню funpaybot menu

Быстрый старт

python -m venv .venv
source .venv/bin/activate   # Windows: .venv\Scripts\activate
pip install -r requirements.txt
pip install -e .

funpaybot init
  1. Откройте FunPay в браузере → DevTools → Application → Cookies → скопируйте golden_key.
  2. Вставьте ключ в .env:
FUNPAY_GOLDEN_KEY=ваш_ключ
  1. В config.yaml укажите категории для поднятия (game_id / node_id). Их можно взять из URL страницы торговли, например
    https://funpay.com/lots/2450/tradenode_id=2450.
    game_id смотрите в HTML/Network при нажатии «Поднять» или в data-app-data.

  2. Проверка и запуск:

funpaybot whoami
funpaybot run

CLI

funpaybot whoami              # профиль + CSRF
funpaybot balance             # балансы
funpaybot lots                # ваши лоты
funpaybot raise --all         # поднять все категории из конфига
funpaybot raise -g 41 -n 2450 # поднять одну категорию
funpaybot orders              # последние продажи
funpaybot chats               # чаты
funpaybot say CHAT_ID "текст" # отправить сообщение
funpaybot set-price 12345 99.5
funpaybot lot-toggle 12345 --inactive
funpaybot competitors 2450    # цены конкурентов
funpaybot stock               # остатки склада
funpaybot stock --add-to keys.txt --items "KEY1|KEY2"
funpaybot status
funpaybot menu                # интерактивное меню
funpaybot online              # только вечный онлайн
funpaybot gui                 # веб-панель управления
funpaybot run                 # полный бот (+ вечный онлайн принудительно)

Сборки (только 64-bit)

Файл Платформа
dist/artifacts/FunPayBot-windows-x64.exe Windows x64 (PE32+)
dist/artifacts/FunPayBot-windows-portable.zip Windows x64 portable (Python amd64)
dist/artifacts/FunPayBot-linux-x86_64 Linux x86_64
dist/artifacts/FunPayBot-android-termux.zip Android через Termux
APK arm64-v8a bash scripts/build_android_apk.sh или GitHub Actions
bash scripts/build_native.sh           # Linux x64
bash scripts/build_windows_exe.sh      # Windows x64 .exe (через Wine)
bash scripts/build_windows_portable.sh # portable zip x64

32-bit сборки не поддерживаются.

Автовыдача

Файлы в data/products/ — по одной позиции на строку:

# accounts.txt
mail@example.com:Password1
mail2@example.com:Password2

В config.yaml:

delivery:
  enabled: true
  stock_dir: "data/products"
  mappings:
    - match: "аккаунт"
      file: "accounts.txt"
      message: |
        Ваш аккаунт:
        {product}

Если в названии заказа есть аккаунт, бот заберёт первую строку из файла и отправит покупателю.

Конфиг

Смотрите config.example.yaml. Основные блоки:

  • raise_lots — автоподнятие
  • online — вечный онлайн
  • autoresponder — правила автоответов
  • greeting / review_reminder — тексты после заказа
  • delivery — склад
  • pricing.undercut — автоснижение цены относительно конкурентов (выключено по умолчанию)

Плейсхолдеры в шаблонах: {buyer}, {order_id}, {price}, {description}, {product}.

Безопасность

  • Не коммитьте .env, config.yaml с ключом и файлы склада.
  • golden_key = полный доступ к аккаунту. Храните как пароль.
  • Соблюдайте правила FunPay; чрезмерный флуд запросами может привести к ограничениям.
  • Рекомендуется user_agent, совпадающий с браузером, в котором получен ключ.

Структура

funpaybot/
  client.py       # HTTP-клиент FunPay
  bot.py          # оркестратор модулей
  cli.py          # Typer CLI
  config.py       # YAML + env
  models.py
  modules/
    raiser.py     # автоподнятие
    online.py     # онлайн
    autoresponder.py
    delivery.py
    greeting.py
    pricing.py
    events.py     # поллинг заказов/чатов
  utils/
data/products/    # склад
config.example.yaml

Разработка

pip install -e ".[dev]"
pytest -q

Лицензия

MIT

About

e

Resources

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors