Skip to main content

Python Version License

fpx

fpx - асинхронный фреймворк и библиотека для упрощения взаимодействия с funpay.com, с целью максимальной скорости и простоты входа

GitHub Read the Docs Telegram PyPI


Оригинальный сайт не предоставляет публичного API для разработчиков. Фреймворк написан в качестве исправления данной проблемы.

Особенности

  • В отличие от FunPayAPI фреймворк работает на декораторах, что сильно упрощает разработку
  • Стиль проекта сформирован из популярных фреймворков, таких как aiogram, fastapi, starlette
  • Очень простой код, ниже реализован пример

Установка

Установка библиотеки:

pip install fpx-engine  

Обновление библиотеки:

pip install -U fpx-engine

Пример использования

Получение нового сообщения и автоматический ответ на него:

import asyncio
from fpx import FunPayTools, types


async def main():
    # инициализируем аккаунт (golden_key и golden_seal - куки твоего аккаунта на funpay.com)
    fp = FunPayTools("golden_key", "golden_seal")

    # ловим сообщение
    @fp.router.on_message()
    async def answer_message(message: types.Message):
        # отвечаем на сообщение
        await message.answer("Привет")

    # запускаем приём событий
    await fp.runner.start_polling(3, is_background=True)
    await fp.runner.idle()


if __name__ == "__main__":
    asyncio.run(main())

Архитектура

Как устроен приём событий

Из-за отсутсвтия вебхуков или подобной технологии на фанпей, fpx работает через polling, раз в заданное кол-во секунд делает несколько запросов на фанпей, а именно отслеживание сообщений, заказов, отзывов, демперов, записывает их в кеш и сравнивает новые данные со старыми, если находит отличие то вызывает хендлер.

Фильтры в хендлерах

Вместо ручной обработки есть возможность использовать множество встроенных фильтров, но при желании всё также можно добавить свой кастомный фильтр.
Пример:

@fp.router.on_message(text='start')
async def cmd_start(message: types.Message):
    await message.answer('На связи')

Отличия от других утилит

В отличие от коллег, fpx полностью асинхронный фреймворк, с максимальной простотой входа. У фреймворка есть полезные встроенные инструменты, в пример можно взять fp.router.message_commands() который регистрирует команды одной строчкой.

Экосистема

Вы можете использовать телеграм бот FunPayX как оболочку над фреймворком с уже встроенными автоматизациями

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fpx_engine-0.7.6.tar.gz (42.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fpx_engine-0.7.6-py3-none-any.whl (57.5 kB view details)

Uploaded Python 3

File details

Details for the file fpx_engine-0.7.6.tar.gz.

File metadata

  • Download URL: fpx_engine-0.7.6.tar.gz
  • Upload date:
  • Size: 42.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.10.12

File hashes

Hashes for fpx_engine-0.7.6.tar.gz
Algorithm Hash digest
SHA256 92beaefcac65389ff0539f65fb3ed6d41d2f5a4303e1ff3982509e7814c0817b
MD5 42d3f4c3aaf21d50f5b6b277edc3a2c0
BLAKE2b-256 6b4454348092de8696e4a29158e7c5c788fb1c653ea25f12f036adde72aa545a

See more details on using hashes here.

File details

Details for the file fpx_engine-0.7.6-py3-none-any.whl.

File metadata

  • Download URL: fpx_engine-0.7.6-py3-none-any.whl
  • Upload date:
  • Size: 57.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.10.12

File hashes

Hashes for fpx_engine-0.7.6-py3-none-any.whl
Algorithm Hash digest
SHA256 f14ead79239df17b90d2ca825557d78815a207ab45907d9b705f8c527d7b90f9
MD5 521ab6e497e2a3ed382c1614115b17e4
BLAKE2b-256 d492cd83959c2089c9d350986017effe54c70ec94262dd36d35b4d76986b68b0

See more details on using hashes here.

Release history Release notifications | RSS feed

0.8.0

2 files

0.7.7

2 files

This release

0.7.6 This release

2 files

0.7.5

2 files

0.7.4

2 files

0.7.3

2 files

0.7.2

2 files

0.7.1

2 files

0.7.0

2 files

0.6.6

2 files

0.6.5

2 files

0.6.4

2 files

0.6.3

2 files

0.6.1

2 files

0.6.0

2 files

0.5.4

2 files

0.5.3

2 files

0.5.2

2 files

0.5.1

2 files

0.5.0

2 files

0.4.0

2 files

0.3.2

2 files

0.3.0

2 files

0.2.0

2 files

0.1.9

2 files

0.1.8

2 files

0.1.7

2 files

0.1.6

2 files

0.1.5

2 files

0.1.4

2 files

0.1.2

2 files

0.1.1

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page