Найти - Пользователи
Полная версия: qrcode
Начало » Python для новичков » qrcode
1 2
tamazav
Добрый день! Подскажите, пожалуйста, как можно решить следующую проблему:

Формирую QR-код c использованием qrcode. В QR-коде, соответственно, указываются реквизиты и сумма к оплате.
В соответствии со стандартом, сумма к оплате умножается на 100.
Проблема в том, что в одних банках (например, в сбере) сумма отображается правильно, а в других (например, в альфа-банке) - не корректно (сумма, умноженная на 100)
QR-код формируется с использованием следующего кода:

 import qrcode
self.QRString = zdes_stroka # здесь строка с данными в соответствии с ГОСТ
self.make_QR = qrcode.make(self.dlyaQR + self.QRString)
self.img_Qr = self.make_QR.save('temp.png')
self.img = Image('temp.png')
self.img.height = 140
self.img.width =140

Может есть в qrcode дополнительные настройки для корректного отображения данных, может я указал не все требуемые параметры?
py.user.next
tamazav
Проблема в том, что в одних банках (например, в сбере) сумма отображается правильно, а в других (например, в альфа-банке) - не корректно (сумма, умноженная на 100)
И при чём тут qr-код? Если он читается, то он читается однозначно.
tamazav
py.user.next
И при чём тут qr-код? Если он читается, то он читается однозначно.

В том то все и дело, что неоднозначно. На сбере все читается и сумма правильная, на альфа банке все читается, только сумма ставится без запятых (т.е. умноженное на 100)
tamazav
Понял в чем причина, но не знаю как победить. В сбере если сумма с запятой (например, 420,15), то не читает, хочет с точкой (420.15) . В Альфа банке наоборот - если запятая, что ставит, если точка, то игнорирует.

xam1816
Покажи две строки Альфы и Сбера,
py.user.next
tamazav
но не знаю как победить
Для разных банков делай разные qr-коды. Сделай одну функцию, которая для Сбербанка делает qr-код. Сделай вторую функцию, которая для Альфа-Банка делает qr-код. Эти qr-коды будут различаться полностью.
tamazav
xam1816
Покажи две строки Альфы и Сбера,
строка одна, нет отдельно для сбера и альфы. QR-код делал по ГОСТу

py.user.next
Для разных банков делай разные qr-коды. Сделай одну функцию, которая для Сбербанка делает qr-код. Сделай вторую функцию, которая для Альфа-Банка делает qr-код. Эти qr-коды будут различаться полностью.
Думаю, это не решение проблемы.
Потребители оплачивают с разных банков. Эти 2 банка я пример привел, потому что я клиент этих банков, поэтому отсканировал в их приложениях QR-код.
py.user.next
tamazav
Потребители оплачивают с разных банков.
Ну. Ты получаешь строки для всех банков, а потом для каждой строки делаешь qr-код, отдельный от всех других qr-кодов, индивидуальный. И каждому клиенту ты пачку этих qr-кодов можешь подавать. Для такого банка - такой qr-код, для другого банка - другой qr-код.

Или ты даже не понимаешь, что такое qr-код? Я вот что-то в сомнениях уже на этот счёт. Ты понимаешь, что qr-код никакого отношения к банкам или к банковским системам вообще не имеет? Ты понимаешь, вообще, что это? Может, тебе сначала прочитать, что такое qr-код сам по себе?
tamazav
py.user.next
Или ты даже не понимаешь, что такое qr-код? Я вот что-то в сомнениях уже на этот счёт. Ты понимаешь, что qr-код никакого отношения к банкам или к банковским системам вообще не имеет? Ты понимаешь, вообще, что это? Может, тебе сначала прочитать, что такое qr-код сам по себе?

Прекрасно понимаю. Я сделал требуемую программу на delphi. Там используется dll файл для формирования qr-кода (quricol32.dll). При помощи данной библиотеки формируются qr коды и он прекрасно подходит для любого банка.
Решил переписать на python. Использовал qrcode. Подозреваю, что в quricol32.dll предусмотрели подобные конвертации с точкой или зяпятой и может не предусмотрено в qrcode на pythonю (этого не знаю)
xam1816
tamazav
строка одна, нет отдельно для сбера и альфы. QR-код делал по ГОСТу
покажи строку
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB