Не могу авторизаватся на сайте Directum с помощью Python?
Доброе времени суток, такая проблема решил облегчить жизнь, и написать скриптик для того что бы он авторизавался на сайте Directum просмотрел страничку если нашел новые письма прислал на почту сообщение что есть новые письма, застрял тупо вначале не могу авторизоваться помогите плиз!!?
ошибки возникают на данном этапе с проверкой сертификата: ssl.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:645)
https://www.youtube.com/watch?v=eRSJSKG4mDA - весьма подробное руководство, как авторизоваться через requests. вкратце - подняли сессию, гетнули страницу авторизации, нашли crsf-токен, передали его через хедеры.
посмотрите, что в браузере происходит. зайдите на страницу авторизации, откройте консоль разработчика и перейдите во вкладку network. авторизуйтесь, и смотрите, какие уходят запросы. большой шанс вероятности, что данные уходят в post-запросе, его надо будет повторить.
qlkvg: данные уходят в GET но там при запросе
r=requests.get('https://directum.adm.yar.ru/Login.aspx', auth=('***', '***'), verify=False)
print(r.status_code)
print(r.text)
выводит страничку в которой поля не только авторизации но и те которые заполнять не нужно можно ли задать в параметрах
{Username: "***", Password: "***", UseWA: false, Domain: "", Authentication: "2",…}
Authentication:"2"
Domain:""
IsPassThroughAuth:false
LogonMsgDone:false
Password:"****"
RememberMe:false
UseWA:false
Username:"****"
не обладаю аккаунтом на этом сайте, но могу предположить, что авторизационные данные всегда уходят в POST запросе. повторите его через requests(с url https://directum.adm.yar.ru/UserLogin.asmx/Login, хедерами и параметрами такими же, как и в браузере при отправке данных)
https://gist.github.com/qlkvg/625ac9b2ce364656e84a...
Работает, в ответ отдает json с ругательством о неправильном логине и пароле. Я еще раз повторюсь, посмотри в браузере, что уходит в post-запросе и один в один повтори это в коде в словаре login_data
qlkvg: все супер, но загвоздка есть в том что после того как залогинился выходит сообщение с предупреждением на котором надо ок нажать и после этого мы входим в эту чудо систему да и подскажи что почитать можно чтоб просветлеть в этом плане
маны по requests, гугл, метод проб и ошибок. есть еще не такой джедайский, но более простой вариант - взять selenium. по нему манов куча на любых языках
qlkvg: я извиняюсь за точто достаю, подскажи допустим я в силениуме захожу на страничку ввожу логин пароль нажимаю на кнопку войти а как мне посмотреть вошел я или нет?
qlkvg: да пипец , скачал я и драйвера хром установился через pip а лисий драйвер не хочет и выдает ошибки что "'chromedriver' executable needs to be in PATH" но я прописывал в винде путь к нему, прописывал в коде но там на синтаксис ругается вообщем опять на фигне ступор какой то
qlkvg: есть другой вопрос а как реализовать если я компилирую это в exe то про запуске на пк он узнавал какой браузер и открывал или хром или фаерфокс или ие?
1. хардкодить определенный драйвер с прописанным executable_path и держать его рядом 2. куча try-catch, пробующих поднять все драйвера по очереди
1 вариант оптимальный