import?hmac,?base64,?struct,?hashlib,?time
class?google_token:
????def?get_hotp_token(secret,?intervals_no):
????????key?=?base64.b32decode(secret,?True)
????????msg?=?struct.pack(">Q",?intervals_no)
????????h?=?hmac.new(key,?msg,?hashlib.sha1).digest()
????????o?=?h[19]?&?15
????????h?=?(struct.unpack(">I",?h[o:o+4])[0]?&?0x7fffffff)?%?1000000
????????return?h
????def?get_totp_token():
????????secret?=?'2F3ZS7D26SXI6KIDSMLIWWSUXYJNZZX44MGVZOPUXMSYR7HJPOL6PQR2S5QIKO75'? ?# google key
????????return?get_hotp_token(secret,?intervals_no=int(time.time())//30)