Найти - Пользователи
Полная версия: Авторизация на сайте пользователем приложения
Начало » Python для новичков » Авторизация на сайте пользователем приложения
1
Temp
Доброго времени суток!

В интернете очень много примеров авторизации через модуль requests, но он возвращает только код данной страницы, написанной на php(кажется)
Меня же интересует непосредственно вывод маленького окошка браузера без строк вкладок и адреса, только указанный сайт авторизации. Закрывающийся при успешной авторизации и возвращающей hash или токен(ну или как он там называется…)
Даже в древности такая форма авторизации существовала, на тех же лаунчерах для ВК, поэтому я более чем уверен что в python это где-то есть
AD0DE412
https://vk.com/dev/manuals
Temp
Добрый день!
Авторизация не связана с VK, его я упомянул так, для примера.
Вот сюда нужно: https://www.moysklad.ru/
По API есть данные способы авторизации:
MoySklad.get_instance(login,password) - в случае наличия логина и пароля в коде программы
MoySklad.find_instance_by_hash(hash_code) - это я так понял хэш логина-пароля

второй способ меня как раз таки и интересует
Temp
Народ!

Есть идеи?
py.user.next
Temp
Вот сюда нужно:
Думаешь, там кто-то будет регаться? У меня и в VK аккаунта нет. Как-то он нафиг не упал.
Temp
py.user.next
Да не, Вы не правильно поняли. Забыли про ВК. Это был пример. Задам вопрос заново.

В данный момент пользуюсь модулем moysklad, для загрузки тех или иных данных и дальнейшей обработки.

Для получения этих самых данных пользователю нужно авторизоваться, то-есть, нужен его логин-пароль от сервиса МойСклад.
 MoySklad.get_instance(login,password)
Этот способ самый простой (в данный момент я пользуюсь им), но для этого пользователю необходимо вводить логин-пароль в созданные мною поля(в tkinter или PyQt5), чего не каждый пользователь захочет ввиду опасения кражи данных (логина и пароля) и передачи их третьему лицу.

Меня заинтересовала следующая функция авторизации из того же модуля:
 MoySklad.find_instance_by_hash(hash_code)
Я так понял эта функция, для авторизации использует уже захэшированные данные “логин:пароль”.

А теперь вопрос, реализуемо ли во время выполнения кода программы, открыть нужную (официальную) страницу через браузер (ну или в окне PyQt5), где пользователь введет свои данные или просто подтвердит вход в учетную запись, если его логин-пароль уже сохранены браузером, и в случае успешной авторизации, закрыть это окно браузера и вернуть мне этот хэш, который в свою очередь будет аргументом для функции что я указал выше.

Надеюсь, всё внятно расписал.
py.user.next
Temp
Я так понял эта функция, для авторизации использует уже захэшированные данные “логин:пароль”.
Это может быть что угодно, но да, думаю, это что-то вроде печенья, как в обмене по протоколу HTTP. wiki. печенье

Temp
А теперь вопрос, реализуемо ли во время выполнения кода программы, открыть нужную (официальную) страницу через браузер (ну или в окне PyQt5), где пользователь введет свои данные или просто подтвердит вход в учетную запись, если его логин-пароль уже сохранены браузером, и в случае успешной авторизации, закрыть это окно браузера и вернуть мне этот хэш, который в свою очередь будет аргументом для функции что я указал выше.

Надеюсь, всё внятно расписал.
Ну, написал так, что нужно украсть тайные данные из браузера пользователя.
Ты можешь сообщить пользователю, что он должен ввести свои логин и пароль для входа через твою программу. Причём пользователь должен быть уведомлён, что входит через твою программу и она может сохранять его пароль и передавать его кому-то - тебе, например. Дальше он соглашается на это всё и вводит свои логин и пароль. И дальше ты берёшь их и подключаешься к moysklad с их помощью через API этого сервиса. Лазить в браузер к пользователю не надо, так как браузеров много и хранят они свои данные по-разному. Утонешь просто в конвертерах, так как для каждого браузера придётся писать свой способ доступа к его внутренним данным, который ещё может меняться создателями браузера без уведомления об этом кого-то.
Temp
Оукей, я понял, не зря значит клепел скам-окошко похожее на официальный сайт.

Спасибо.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB