2016-02-13 17:06:36 -06:00
|
|
|
#!/usr/bin/python
|
|
|
|
import keys
|
2016-05-10 20:23:48 -05:00
|
|
|
import logging
|
2016-02-13 17:06:36 -06:00
|
|
|
from vk import API, AuthSession, Session
|
2016-05-10 20:23:48 -05:00
|
|
|
log = logging.getLogger("vkSessionHandler")
|
2016-02-13 17:06:36 -06:00
|
|
|
|
|
|
|
class vkObject(object):
|
|
|
|
|
|
|
|
def __init__(self):
|
|
|
|
self.api_key = keys.keyring.get_api_key()
|
2018-09-03 09:43:33 -05:00
|
|
|
self.api_version = 5.84
|
2016-05-10 20:23:48 -05:00
|
|
|
log.debug("Created vkSession using VK API Version %s" % (self.api_version,))
|
2016-02-13 17:06:36 -06:00
|
|
|
|
|
|
|
def login(self, user, password):
|
2016-05-10 20:23:48 -05:00
|
|
|
log.debug("Logging in vk using user/password authentication")
|
2016-02-13 17:06:36 -06:00
|
|
|
s = AuthSession(app_id=self.api_key, user_login=user, user_password=password, scope="wall, notify, friends, photos, audio, video, docs, notes, pages, status, groups, messages, notifications, stats")
|
2016-02-23 17:49:55 -06:00
|
|
|
self.client = API(s, v=self.api_version)
|
2016-05-10 20:23:48 -05:00
|
|
|
log.debug("Getting tokens for 24 hours...")
|
2016-02-13 17:06:36 -06:00
|
|
|
self.client.account.getProfileInfo()
|
2018-11-05 10:04:02 -06:00
|
|
|
# Add session data to the application statistics.
|
|
|
|
self.client.stats.trackVisitor()
|
2016-02-13 17:06:36 -06:00
|
|
|
|
|
|
|
def login_access_token(self, token):
|
2016-05-10 20:23:48 -05:00
|
|
|
log.debug("Logging in VK using stored tokens...")
|
2016-02-13 17:06:36 -06:00
|
|
|
s = Session(access_token=token)
|
2016-02-23 17:49:55 -06:00
|
|
|
self.client = API(s, v=self.api_version)
|
2016-02-14 18:46:23 -06:00
|
|
|
return self.client.account.getProfileInfo()
|