Интеграции с биржой микрозадач

Интеграции с биржой микрозадач

Сегодня я расскажу о библиотеке для интеграции с API биржой микрозадач unu.im

Введение

Я не использую биржи для заработка. Мне нравится идея, в которой я плачу людям копейку, а они делают что-то незамысловатое. Чаще всего такие сервисы ориентированны на накрутку активности в социальных сетях, сайтах и других интернет ресурсах.

Кто то регает кучу рефералов на сервисах с партнеркой, в надежде получить лида и конверсию с него, но это все не про меня, я использовал этот сервис в качестве А/Б тестов своего проекта.

Интеграции с биржой микрозадач

Как работает UNU?

  • Регистрируетесь на сайте
  • Добавляете задание и оплачиваете необходимое количество работ
  • Получаете результат и проверяете выполненные работы

Доступные типы задач

  • Наполнение сайтов: комментарии, отзывы, форумы, доски объявлений
  • Продвижение в социальных сетях: подписчики в группы, лайки, репосты
  • Продвижение приложений: установки и действия
  • Любые произвольные задачи, которые нужно выполнять на регулярной основе

Установка

pip install unu_api

Зависимости

На данный момент библиотека зависит только от библиотеки requests

Использование

Получите токен в личном кабинете на сайте https://unu.im/api-info и инициализируйте класс для работы с API

from unu_api import Api

u = Api(token="ВАШ_ТОКЕН")

request = u.get_balance()

Тестирование

Протестировать библиотеку можно запустив команду pytest указав в переменной окружения ваш API_KEY

API_KEY=ВАШ_ТОКЕН pytest

Доступные методы

Реализован полный набор методов доступный в официальном API

  • get_balance — Возвращает количество доступных средств
  • get_folders — Возвращает все созданные папки с задачами
  • create_folder — Создаёт новую папку
  • move_task — Перемещает задачу в указанную папку
  • get_tasks — Возвращает существующие задачи
  • get_reports — Возвращает отчёты по определённой задаче или все существующие отчёты
  • approve_report — Принимает (оплачивает) отчёт по заданию
  • reject_report — Отклоняет отчёт по заданию
  • get_expenses — Возврашает сумму израсходованных средств
  • add_task — Создаёт новую задачу
  • task_limit_add — Устанавливает лимит (добавляет выполнения) определённой задачи
  • edit_task — Редактирует существующую задачу
  • get_tariffs — Возвращает все доступные тарифы
  • task_pause — Приостанавливает выполнение задачи
  • task_play — Активирует выполнение задачи
  • get_minter_wallet — Возвращает адрес Minter-кошелька для пополнения баланса аккаунта

Кастомные исключения

Мне пришлось реализовать кастомный набор ошибок для удобства разработки.

  • AuthError — Исключение при отсутствие токена
  • BalanceError — Исключения при отрицательном балансе
  • RequestError — Исключение для неуспешных запросов к API
  • JsonParsingError — Исключение для ошибок декодирования Json
  • UnknowError — Для неизвестных ошибок

Устранение неполадок

Время от времени могут переставать работать определенные методы. Вместо json будет в ответ прилетать лог ошибки php, обычно я пишу в поддержку на сайте и разработчики фиксят эти баги. Для этого кейса я ввел кастомное исключение JsonParsingError.

Ссылки

Сайт биржи — https://unu.im

Ссылка на GitHub — https://github.com/r4hx/unu_api/

Ссылка на PyPi — https://pypi.org/project/unu_api/

Егор Егоров

Программирую на Python с 2017 года. Люблю создавать контент, который помогает людям понять сложные вещи. Не представляю жизнь без непрерывного цикла обучения, спорта и чувства юмора.

Ссылка на мой github есть в шапке. Залетай.

Оцените автора
Егоров Егор
Добавить комментарий