Как получить токен ВК запрашивая через API Authorization Code Flow?
День добрый. Через Pycharm пишу простой код для API VK
class class_name():
def __init__(self):
self.user_token : str
self.urlAuthorize = "http://oauth.vk.com/authorize/"
self.params = {
"client_id" : "9999999",
"scope" : "messages.photos.friends.stories.pages.groups",
"response_type" : "token",
"display" : "page",
"redirect_url": "https://oauth.vk.com/blank.html",
"v" : "5.131"
}
Если URL
https://oauth.vk.com/authorize/?client_id=9999999&scope=messages.photos.friends.stories.pages.groups&response_type=token&display=page&v=5.131
вставить в адресную строку браузера, получаю токен
access_token=vk1.a.3l8RM2uTo-yygdLudcdhFXKqyd2Lwqhh79o.......
Если URL вставить в
requests.get("""URL""")
или
requests.request("GET","URL")
В консоли вижу код <Response [200]> , получаю страницу для авторизации пользователя.
Как получить токен? Или как пройти этап авторизации и редиректа?
def autorisation(self):
var_requests = requests.get(url=self.urlAuthorize, params=self.params, headers=self.header)
return var_requests
Ответы (1 шт):
Автор решения: Tryd0g0lik
→ Ссылка
Получил токен через модуль vk_api, на этапе прохождения авторизации. Только пришлось добавить код
def auth_handler():
""" При двухфакторной аутентификации вызывается эта функция.
"""
# Код двухфакторной аутентификации
key = input("Enter authentication code: ")
# Если: True - сохранить, False - не сохранять.
remember_device = True
return key, remember_device
def mainAutor(login, password):
""" Пример обработки двухфакторной аутентификации """
vk_session = vk_api.VkApi(
login, password,
# функция для обработки двухфакторной аутентификации
auth_handler=auth_handler
)
try:
vk_session.auth()
except vk_api.AuthError as error_msg:
print(error_msg)
return