mirror of
https://github.com/yawaflua/python-qiwi.git
synced 2025-12-10 04:19:31 +02:00
fixes bugs
This commit is contained in:
76
python_qiwi/python_qiwi.py
Normal file
76
python_qiwi/python_qiwi.py
Normal file
@@ -0,0 +1,76 @@
|
||||
|
||||
import requests
|
||||
import time
|
||||
import random
|
||||
import string
|
||||
|
||||
|
||||
class QiwiWwаllet():
|
||||
|
||||
def __init__(self, phone, api_token):
|
||||
self.s = requests.Session()
|
||||
self.s.headers['authorization'] = 'Bearer ' + api_token
|
||||
self.phone = phone
|
||||
|
||||
def pay(self, to_qw, sum_p2p, comment=''):
|
||||
sum_p2p = str(int(sum_p2p)) + '.00'
|
||||
self.s.headers = {
|
||||
'content-type': 'application/json',
|
||||
'User-Agent': 'Android v3.2.0 MKT',
|
||||
'Accept': 'application/json',
|
||||
}
|
||||
|
||||
postjson = {"id": str(int(time.time() * 1000)), "sum": {
|
||||
"amount": '2.00', "currency": "643"
|
||||
}, "paymentMethod": {
|
||||
"type": "Account", "accountId": "643"
|
||||
}, "comment": str(comment), "fields": {"account": to_qw}}
|
||||
res = self.s.post(
|
||||
'https://edge.qiwi.com/sinap/api/v2/terms/99/payments',
|
||||
json=postjson)
|
||||
return res.json()
|
||||
|
||||
def payment_history(self, rows_num=5):
|
||||
parameters = {'rows': str(rows_num), 'nextTxnId': '', 'nextTxnDate': ''}
|
||||
h = self.s.get('https://edge.qiwi.com/payment-history/v2/persons/' +
|
||||
self.phone + '/payments', params=parameters)
|
||||
return h.json()
|
||||
|
||||
def bill(self):
|
||||
letters = string.ascii_lowercase
|
||||
return ''.join(random.choice(letters) for i in range(7))
|
||||
|
||||
def check(self, comment):
|
||||
lastPayments = self.payment_history(20)
|
||||
for payment in lastPayments:
|
||||
qcomment = payment['comment']
|
||||
if comment in qcomment:
|
||||
return True
|
||||
return False
|
||||
|
||||
def full_balance(self):
|
||||
|
||||
self.s.headers['Accept'] = 'application/json'
|
||||
|
||||
b = self.s.get(
|
||||
'https://edge.qiwi.com/funding-sources/v2/persons/' + self.phone +
|
||||
'/accounts')
|
||||
return b.json()
|
||||
|
||||
def balance(self):
|
||||
self.s.headers['Accept'] = 'application/json'
|
||||
|
||||
b = self.s.get(
|
||||
'https://edge.qiwi.com/funding-sources/v2/persons/' + self.phone + '/accounts')
|
||||
b = b.json()
|
||||
b = b['accounts'][0]['balance']['amount']
|
||||
|
||||
return b
|
||||
|
||||
def get_profile(self):
|
||||
|
||||
self.s.headers['Accept'] = 'application/json'
|
||||
|
||||
p = self.s.get(
|
||||
'https://edge.qiwi.com/person-profile/v1/profile/current?authInfoEnabled=true&contractInfoEnabled=true&userInfoEnabled=true')
|
||||
return p.json()
|
||||
Reference in New Issue
Block a user