Типы FunPayAPI#
В данном модуле описаны все типы пакета FunPayAPI
- class FunPayAPI.types.ChatShortcut(id_: int, name: str, last_message_text: str, unread: bool, html: str, determine_msg_type: bool = True)#
Данный класс представляет виджет чата со страницы https://funpay.com/chat/
- Параметры:
id (
int
) – ID чата.name (
str
) – название чата (никнейм собеседника).last_message_text (
str
) – текст последнего сообщения в чате (макс. 250 символов).unread (
bool
) – флаг «непрочитанности» (True, если чат не прочитан (оранжевый). False, если чат прочитан).html (
str
) – HTML код виджета чата.determine_msg_type (
bool
, опционально) – определять ли тип последнего сообщения?
- last_message_type: MessageTypes | None#
Тип последнего сообщения.
- get_last_message_type() MessageTypes #
Определяет тип последнего сообщения в чате на основе регулярных выражений из MessageTypesRes.
!Внимание! Результат определения типа сообщения данным методом не является правильным в 100% случаев, т.к. он основан на сравнении с регулярными выражениями. Возможны «ложные срабатывание», если пользователь напишет «поддельное» сообщение, которое совпадет с одним из регулярных выражений.
- Результат:
тип последнего сообщения.
- Тип результата:
- class FunPayAPI.types.Chat(id_: int, name: str, looking_link: str | None, looking_text: str | None, html: str, messages: list[FunPayAPI.types.Message] | None = None)#
Данный класс представляет личный чат.
- Параметры:
id (
int
) – ID чата.name (
str
) – название чата (никнейм собеседника).looking_link (
str
orNone
) – ссылка на лот, который смотрит собеседник.looking_text (
str
orNone
) – название лота, который смотрит собеседник.html (
str
) – HTML код чата.messages (
list
ofFunPayAPI.types.Message
orNone
) – последние 100 сообщений чата.
- messages: list[FunPayAPI.types.Message]#
Последние 100 сообщений чата.
- class FunPayAPI.types.Message(id_: int, text: str | None, chat_id: int | str, chat_name: str | None, author: str | None, author_id: int, html: str, image_link: str | None = None, determine_msg_type: bool = True, badge_text: str | None = None)#
Данный класс представляет отдельное сообщение.
- Параметры:
id (
int
) – ID сообщения.chat_id (
int
orstr
) – ID чата, в котором находится данное сообщение.chat_name (
str
orNone
) – название чата, в котором находится данное сообщение.author_id (
int
) – ID автора сообщения.html (
str
) – HTML код сообщения.image_link (
str
orNone
, опционально) – ссылка на изображение из сообщения (если есть).determine_msg_type (
bool
, опционально) – определять ли тип сообщения.
- type: MessageTypes | None#
Тип сообщения.
- get_message_type() MessageTypes #
Определяет тип сообщения на основе регулярных выражений из MessageTypesRes.
Внимание! Данный способ определения типа сообщения не является 100% правильным, т.к. он основан на сравнении с регулярными выражениями. Возможно ложное «срабатывание», если пользователь напишет «поддельное» сообщение, которое совпадет с одним из регулярных выражений. Рекомендуется делать проверку на author_id == 0.
- Результат:
тип последнего сообщения в чате.
- Тип результата:
- class FunPayAPI.types.OrderShortcut(id_: str, description: str, price: float, buyer_username: str, buyer_id: int, status: OrderStatuses, date: datetime, subcategory_name: str, html: str, dont_search_amount: bool = False)#
Данный класс представляет виджет заказа со страницы https://funpay.com/orders/trade
- Параметры:
id (
str
) – ID заказа.description (
str
) – описание заказа.price (
float
) – цена заказа.buyer_username (
str
) – никнейм покупателя.buyer_id (
int
) – ID покупателя.status (
FunPayAPI.common.enums.OrderStatuses
) – статус заказа.date (
datetime.datetime
) – дата создания заказа.subcategory_name (
str
) – название подкатегории, к которой относится заказ.html (
str
) – HTML код виджета заказа.dont_search_amount (
bool
, опционально) – не искать кол-во товара.
- status: OrderStatuses#
Статус заказа.
- class FunPayAPI.types.Order(id_: str, status: OrderStatuses, subcategory: SubCategory, short_description: str | None, full_description: str | None, sum_: float, buyer_id: int, buyer_username: str, seller_id: int, seller_username: str, html: str, review: Review | None)#
Данный класс представляет заказ со страницы https://funpay.com/orders/<ORDER_ID>/
- Параметры:
id (
str
) – ID заказа.status (
FunPayAPI.common.enums.OrderStatuses
) – статус заказа.subcategory (
FunPayAPI.types.SubCategory
) – подкатегория, к которой относится заказ.short_description (
str
orNone
) – краткое описание (название) заказа.sum (
float
) – сумма заказа.buyer_id (
int
) – ID покупателя.buyer_username (
str
) – никнейм покупателя.seller_id (
int
) – ID продавца.seller_username (
str
) – никнейм продавца.html (
str
) – HTML код заказа.review (
FunPayAPI.types.Review
orNone
) – объект отзыва на заказ.
- status: OrderStatuses#
Статус заказа.
- subcategory: SubCategory#
Подкатегория, к которой относится заказ.
- class FunPayAPI.types.Category(id_: int, name: str, subcategories: list[FunPayAPI.types.SubCategory] | None = None)#
Класс, описывающий категорию (игру).
- Параметры:
id (
int
) – ID категории (game_id / data-id).name (
str
) – название категории (игры).subcategories (
list
ofFunPayAPI.types.SubCategory
orNone
, опционально) – подкатегории.
- add_subcategory(subcategory: SubCategory)#
Добавляет подкатегорию в список подкатегорий.
- Параметры:
subcategory (
FunPayAPI.types.SubCategory
) – объект подкатегории.
- get_subcategory(subcategory_type: SubCategoryTypes, subcategory_id: int) SubCategory | None #
Возвращает объект подкатегории.
- Параметры:
subcategory_type (
FunPayAPI.common.enums.SubCategoryTypes
) – тип подкатегории.subcategory_id (
int
) – ID подкатегории.
- Результат:
объект подкатегории или None, если подкатегория не найдена.
- Тип результата:
- get_subcategories() list[FunPayAPI.types.SubCategory] #
Возвращает все подкатегории данной категории (игры).
- Результат:
все подкатегории данной категории (игры).
- Тип результата:
- get_sorted_subcategories() dict[FunPayAPI.common.enums.SubCategoryTypes, dict[int, FunPayAPI.types.SubCategory]] #
Возвращает все подкатегории данной категории (игры) в виде словаря {type: {ID: подкатегория}}.
- Результат:
все подкатегории данной категории (игры) в виде словаря {type: ID: подкатегория}}.
- Тип результата:
dict
{FunPayAPI.common.enums.SubCategoryTypes
:dict
{int
,FunPayAPI.types.SubCategory
}}
- class FunPayAPI.types.SubCategory(id_: int, name: str, type_: SubCategoryTypes, category: Category)#
Класс, описывающий подкатегорию.
- Параметры:
id (
int
) – ID подкатегории.name (
str
) – название подкатегории.type (
FunPayAPI.common.enums.SubCategoryTypes
) – тип лотов подкатегории.category (
FunPayAPI.types.Category
) – родительская категория (игра).
- type: SubCategoryTypes#
Тип подкатегории.
- class FunPayAPI.types.LotFields(lot_id: int, fields: dict)#
Класс, описывающий поля лота со страницы редактирования лота.
- set_fields(fields: dict)#
Сбрасывает текущие поля лота и устанавливает переданные. !НЕ РЕДАКТИРУЕТ СВОЙСТВА ЭКЗЕМЛПЯРА!
- renew_fields() LotFields #
Обновляет
__fields
(возвращается в методеFunPayAPI.types.LotFields.get_fields()
), основываясь на свойствах экземпляра. Необходимо вызвать перед сохранением лота на FunPay после изменения любого свойства экземпляра.- Результат:
экземпляр класса
FunPayAPI.types.LotFields
с новыми полями лота.- Тип результата:
- class FunPayAPI.types.LotShortcut(id_: int | str, server: str | None, description: str | None, price: float, subcategory: SubCategory, html: str)#
Данный класс представляет виджет лота.
- Параметры:
- subcategory: SubCategory#
Подкатегория лота.
- class FunPayAPI.types.UserProfile(id_: int, username: str, profile_photo: str, online: bool, banned: bool, html: str)#
Данный класс представляет пользователя FunPay.
- Параметры:
- get_lot(lot_id: int | str) LotShortcut | None #
Возвращает объект лота со страницы пользователя.
- Параметры:
- Результат:
объект лота со страницы пользователя или None, если объект не найден.
- Тип результата:
- get_lots() list[FunPayAPI.types.LotShortcut] #
Возвращает список всех лотов пользователя.
- Результат:
список всех лотов пользователя.
- Тип результата:
- get_sorted_lots(mode: Literal[1]) dict[int | str, FunPayAPI.types.LotShortcut] #
- get_sorted_lots(mode: Literal[2]) dict[FunPayAPI.types.SubCategory, dict[int | str, FunPayAPI.types.LotShortcut]]
- get_sorted_lots(mode: Literal[3]) dict[FunPayAPI.common.enums.SubCategoryTypes, dict[int | str, FunPayAPI.types.LotShortcut]]
Возвращает список всех лотов пользователя в виде словаря.
- Параметры:
mode –
вариант словаря.
1 - {ID: лот}
2 - {подкатегория: {ID: лот}}
3 - {тип лота: {ID: лот}}
- Результат:
список всех лотов пользователя в виде словаря.
- Тип результата:
dict
{int
orstr
:FunPayAPI.types.LotShortcut
} (mode==1)dict
{FunPayAPI.types.SubCategory
:dict
{int
orstr
:FunPayAPI.types.LotShortcut
}} (mode==2)dict
{FunPayAPI.common.enums.SubCategoryTypes
:dict
{int
orstr
:FunPayAPI.types.LotShortcut
}} (mode==3)
- add_lot(lot: LotShortcut)#
Добавляет лот в список лотов.
- Параметры:
lot – объект лота.
- get_common_lots() list[FunPayAPI.types.LotShortcut] #
Возвращает список стандартных лотов со страницы пользователя.
- Результат:
Список стандартных лотов со страницы пользователя.
- Тип результата:
- get_currency_lots() list[FunPayAPI.types.LotShortcut] #
Возвращает список лотов-валют со страницы пользователя.
- Результат:
список лотов-валют со страницы пользователя.
- Тип результата:
- class FunPayAPI.types.Review(stars: int | None, text: str | None, reply: str | None, anonymous: bool, html: str, order_id: str | None = None, author: str | None = None, author_id: int | None = None)#
Данный класс представляет отзыв на заказ.