Skip to content

Ernieleo/digiseller-api-python

Repository files navigation

Digiseller API Python

PyPI version PyPI Package Monthly Download License Test Status

English documentation available here.

Digiseller API Python — это неофициальная Python-библиотека для взаимодействия с API Digiseller.

Важное примечание: Данный проект не связан с официальной командой разработчиков Digiseller и не является официальной библиотекой.
Возможны неточности в некоторых запросах, поскольку комплексное тестирование не проводилось, так как некоторые методы API, описанные в документации Digiseller, могут не соответствовать своему описанию.

Полную документацию API можно найти на сайте Digiseller.
Методы API из блока 'Оплата' недоступны в библиотеке.

Установка

С использованием PyPI:

pip install digiseller-api-python

Установка из репозитория GitHub:

pip3 install git+https://github.com/Ernieleo/digiseller-api-python.git

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

Чтобы использовать Digiseller API, вам понадобятся API ключ и ID продавца:

Пример кода

from digiseller_api import DigisellerApi

# Создание экземпляра API-клиента
digiseller_api = DigisellerApi(seller_id="11155533", api_key="CA1SF69A000A46D00039F01Z11017V39")

# Пример функции для получения данных, указанных пользователем при заказе, по уникальному коду
def get_account_info_from_digiseller(unique_code):
    email, password = None, None
    try:
        # Выполняем запрос
        data = digiseller_api.unique_code(unique_code)
        
        # Извлекаем необходимые данные
        for option in data.get("options", []):
            if option["name"] in ["Почта аккаунта ChatGPT", "ChatGPT account email"]:
                email = option["value"]
            elif option["name"] in ["Пароль аккаунта ChatGPT", "ChatGPT account password"]:
                password = option["value"]
    
        return email, password
    except Exception as e:
        # Обработка исключений
        print(f"Ошибка: {e}")
        return None, None

# Использование функции для получения информации
unique_code = "ВАШ_УНИКАЛЬНЫЙ_КОД"
email, password = get_account_info_from_digiseller(unique_code)
print("Email:", email)
print("Password:", password)

Этот пример показывает, как использовать DigisellerApi для получения данных, введенных покупателем при оформлении заказа.
Функция get_account_info_from_digiseller выполняет запрос по уникальному коду и ищет данные по заданным названиям полей. Названия полей учитывают возможность различий в языке зависимых от выбранного пользователем на сайте.

Дополнительный пример

from digiseller_api import DigisellerApi

from PIL import Image
from io import BytesIO

image = DigisellerApi.get_main_img(id_d=4470041, maxlength=400)
# Открываем изображение из байтов напрямую
image_bytes = image.encode() if isinstance(image, str) else image
image = Image.open(BytesIO(image_bytes))
image.show()

В данном примере представлено взаимодействие с функцией получения основного изображения товара, вызов происходит без использования данных продавца и создания экземпляра API-клиента.

Возвращаемые данные

  • JSON (application/json): Возвращается как словарь Python.
  • XML (application/xml или text/xml): Возвращается как строка XML.
  • Изображение (image/*): Возвращается как байтовый объект.
  • Текст (text/plain и другие текстовые форматы): Возвращается как строка.
  • Другие типы: Возвращается статус-код ответа.
  • Ошибка: В случае проблем будет выброшено исключение ValueError.

Разработка

Приветствуется вклад в развитие проекта!
Если вы хотите помочь с поддержанием актуальности и дальнейшей разработкой, пожалуйста, следуйте официальным правилам API сервиса Digiseller и придерживайтесь общего стиля кода проекта.

Для внесения изменений создайте pull-реквест, и он будет рассмотрен.

Запланировано

В будущих планах создание документации для удобного и корректного использования.

  • Добавить все функции API
  • Дополнительный пример использования в Python
  • Добавить дополнительные отсутствующие функции
  • Полная документация методов (в разработке)
  • Добавить оставшиеся функции (По запросу)

Полезные ссылки

About

Python wrapper package for easy integration with the Digiseller API

Resources

License

Stars

Watchers

Forks

Languages