Библиотека для автоматизации работы с Честным Знаком через True API
Project description
Личный проект для автоматизации работы с Честным Знаком через True API
Только для ОС Windows с установленной КриптоПро SCP
Описание
Этот проект предназначен для автоматизации взаимодействия с системой "Честный Знак" через True API. Последняя версия используемого API — 399.0.
Основная цель проекта - упростить процесс получения статусов и владельцев кодов маркировки.
Подготовка
Установка КриптоПро SCP
Скачать можно по ссылке
Установка зависимостей
Требуется установить вспомогательные библиотеки
pip install aiohttp, pywin32, PyJWT
Установка библиотеки
Установть py_cz_api можно с помощью менеджера пакетов pip
pip install py-cz-api
Инициализация классов и опрос ЧЗ о статусе марок:
import py_cz_api
essep = '01EB1AA50033B12D894A535821B96C26C0'
certificate = py_cz_api.Certificate(essep)
token = py_cz_api.Token.create_from_cert(certificate)
api = py_cz_api.Api(token, py_cz_api.Pgs.ncp)
# Список марок для запроса
mark_list = ['01230000157926=Mflh=dAAAA']
# Выполнение запроса
ans = api.cises_info(mark_list)
# Печать dict ответа от API
print(ans)
Просмотр сертификатов в личном хранилище:
Посмотреть список сертификатов в хранилище Только для ОС Windows
import py_cz_api
py_cz_api.show_certs()
Классы
Каждый элемент автономен и допускает свою реализацию через наследование
Certificate- ЭЦП для шифрования данных исключено для корректной работы PyPiToken- авторизационный токен ЧЗApi- отправка запросов в ЧЗApiDispenser- формирование и скачивание Документов выгрузкиApiExtended- добавление стобцам pandas.DataFrame данные отApi
Реализованный список эндпоинтов:
class: Api
/cises/short/list/cises/info/cises/history/product/info/doc/{documentId}/info/doc/cises
class: ApiDispenser
/dispenser/tasks/dispenser/tasks/{taskId}/dispenser/results/{taskId}/dispenser/results/{taskId}/file
Дополнительная информация
Для получения дополнительной информации и документации по использованию True API, пожалуйста, обратитесь к официальной документации True API версии 418.0.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.