ben-a-c-b / acb.py
alptangall's picture
Create acb.py
018c5c4 verified
import requests
from bs4 import BeautifulSoup as Bs4
import time
import os
import datetime
import random,json
from urllib.parse import unquote
import aiohttp
import base64,re
async def login(user,password):
url='https://apiapp.acb.com.vn/mb/v2/auth/tokens'
data={
"username":user,
"password": password,
"clientId": "iuSuHYVufIUuNIREV0FB9EoLn9kHsDbm"
}
headers={
'user-agent':'ACB-MBA/5 CFNetwork/1325.0.1 Darwin/21.1.0'
}
async with aiohttp.ClientSession(cookie_jar=aiohttp.CookieJar()) as session:
async with session.post(url,headers=headers,json=data) as res:
if res.status<400:
js=await res.json()
headers['authorization']='Bearer '+js['refreshToken']
refreshTk=js['refreshToken']
url='https://apiapp.acb.com.vn/mb/v2/auth/refresh'
async with aiohttp.ClientSession(cookie_jar=aiohttp.CookieJar()) as session:
async with session.post(url,headers=headers) as res:
url='https://apiapp.acb.com.vn/mb/legacy/ss/cs/bankservice/transfers/list/account-payment'
if res.status<400:
js=await res.json()
headers['authorization']='Bearer '+js['accessToken']
print(user+' login success')
return {'headers':headers,'refreshTk':refreshTk,'username':user}
return False
async def getRefreshTk(headers):
url='https://apiapp.acb.com.vn/mb/auth/refresh'
headers['authorization']='Bearer '+headers['refreshTk']
async with aiohttp.ClientSession(cookie_jar=aiohttp.CookieJar()) as session:
async with session.post(url,headers=headers) as res:
if res.status<400:
js=await res.json()
headers['authorization']='Bearer '+js['accessToken']
print(headers['username']+' get refresh token success')
return {headers['']+'headers':headers,'refreshTk':headers['refreshTk'],'username':headers['username']}
async def getListAccount(headers):
url='https://apiapp.acb.com.vn/mb/legacy/ss/cs/bankservice/transfers/list/account-payment'
async with aiohttp.ClientSession(cookie_jar=aiohttp.CookieJar()) as session:
async with session.get(url,headers=headers['headers']) as res:
if res.status<400:
js=await res.json()
print(headers['username']+' get list account success')
return {'list':js['data']}
return False
async def getBalance(headers,id):
url='https://apiapp.acb.com.vn/mb/legacy/ss/cs/person/transaction-history/list?account=15895127&transactionType=&from=&to=&min=&max='
async with aiohttp.ClientSession(cookie_jar=aiohttp.CookieJar()) as session:
async with session.get(url,headers=headers['headers']) as res:
if res.status<400:
js=await res.json()
print(headers['username']+' get balance success')
return {
'data':js['data']
}
return False