С Новым годом! Форум программистов, компьютерный форум, киберфорум
C#: Web, ASP.NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 17.03.2022
Сообщений: 20

Аутентификация на сайте из приложения

03.08.2022, 12:40. Показов 2118. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет.
Делаю парсер для сайта с аутентификацией по логину/паролю. Прошу подсказать, где ошибаюсь:
С помощью Fiddler отловил запрос

POST https://a4.vmtp.ru/csp/a3/app.Login.cls HTTP/1.1
Host: a4.vmtp.ru
Connection: keep-alive
Content-Length: 69
Cache-Control: max-age=0
sec-ch-ua: "Opera GX";v="89", "Chromium";v="103", "_Not:A-Brand";v="24"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "Windows"
Origin: https://a4.vmtp.ru
Upgrade-Insecure-Requests: 1
DNT: 1
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.114 Safari/537.36 OPR/89.0.4447.64
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Sec-Fetch-Site: same-origin
Sec-Fetch-Mode: navigate
Sec-Fetch-User: ?1
Sec-Fetch-Dest: document
Referer: https://a4.vmtp.ru/csp/a3/sys.... .Login.cls
Accept-Encoding: gzip, deflate, br
Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7
Cookie: CSPSESSIONID-SP-443-UP-csp-a3-=00z004010000tRi7p5V1hF0000TmbpvznH5Pw8L e23wsezVQ--; _ym_uid=1657072194941281694; _ym_d=1657072194; CSPWSERVERID=081212d3ac6683c7ba6695a5e7e b686300510fa7
CacheUserName=myLogin&CachePassword=myPa ssword&CacheLogin=%C2%F5%EE%E4

Для проверки полей, что мне понадобятся, отправляю через Postman запрос на сайт. Уже внес все поля/значения - не пускает. Через аутентификацию пользователя в Postman прекрасно заходит. В приложенном список/полей значений, что указал:
Миниатюры
Аутентификация на сайте из приложения  
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
03.08.2022, 12:40
Ответы с готовыми решениями:

Аутентификация на сайте, requests
Пытаюсь аутентифицироваться на сайте (twirpx.com и на этом форуме). Cyberforum.ru: s = requests.Session() data =...

Аутентификация на сайте с запоминанием
асп простой, не дотнетовский! Логиницца пользователь, а ему галочку надо поставить - чтобы при повторном заходи меня пускал без логина...

Программная аутентификация на сайте
Доброго времени суток. Не могу понять как пройти аутентификацию на сайте. Пример дать не могу, доступ только с моего компа открыт. В чем...

14
0 / 0 / 0
Регистрация: 17.03.2022
Сообщений: 20
08.08.2022, 14:37  [ТС]
Я так понимаю, что я POST запросом отправляю данные - отправляю 2 куки файла - один остается без изменений. Второй - изменяется(получаю их из GET запроса). Нас сколько по двум новым куки - и авторизуюсь на сайте и делаю, что мне надо?
0
 Аватар для craftersmine
31 / 29 / 9
Регистрация: 06.06.2014
Сообщений: 373
09.08.2022, 10:40
Что в ответе от сервера после запроса POST?
0
0 / 0 / 0
Регистрация: 17.03.2022
Сообщений: 20
12.08.2022, 04:13  [ТС]
craftersmine,
Получаю вот такой ответ:

GET https://a4.vmtp.ru/csp/a3/app.... IwQR27Ug-- HTTP/1.1
Host: a4.vmtp.ru
Connection: keep-alive
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
DNT: 1
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.114 Safari/537.36 OPR/89.0.4447.64
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Sec-Fetch-Site: same-origin
Sec-Fetch-Mode: navigate
Sec-Fetch-User: ?1
Sec-Fetch-Dest: document
sec-ch-ua: "Opera GX";v="89", "Chromium";v="103", "_Not:A-Brand";v="24"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "Windows"
Referer: https://a4.vmtp.ru/csp/a3/app.Login.cls
Accept-Encoding: gzip, deflate, br
Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7
Cookie: CSPSESSIONID-SP-443-UP-csp-a3-=00e004010000olkfVQZd1g0000cmshzosv92NTo 9IwQR27Ug--; _ym_uid=1657072194941281694; _ym_d=1657072194; CSPWSERVERID=9800fc3bff979cb7010b66666de ba68f0e36aa25

Кука (CSPWSERVERID=9800fc3bff979cb7010b66666d eba68f0e36aa25) совпадает с отправленным запросом. Вторая новая.

Отправленные:
CSPSESSIONID-SP-443-UP-csp-a3-=00l004010000olkfVQZd1g0000benbER$iRsuWM OL8Nu79zQ--
_ym_uid=1657072194941281694
_ym_d=1657072194
CSPWSERVERID=9800fc3bff979cb7010b66666de ba68f0e36aa25
Полученные:
CSPSESSIONID-SP-443-UP-csp-a3-=00e004010000olkfVQZd1g0000cmshzosv92NTo 9IwQR27Ug--
_ym_uid=1657072194941281694
_ym_d=1657072194
CSPWSERVERID=9800fc3bff979cb7010b66666de ba68f0e36aa25

Мне удалось авторизоваться через Postman. Пробовал удалять поля, выяснить какие не нужны для авторизации, но закономерности не выявил, т.к. то авторизуется без какого-то поля, то нет
0
 Аватар для sau
2773 / 2073 / 386
Регистрация: 22.07.2011
Сообщений: 7,820
12.08.2022, 12:04
Si02, забудьте про httpclient и анализ трафика - это допотопный и нерабочий метод , подавляющее число сайтов используют js для генерации параметров запросов , в 99% случаев вам понадобится браузерный движок , и даже тогда не факт что только лишь его будет достаточно (в особо тяжелых случаях некоторые сайты проверяют fingerprint и прочее)
0
 Аватар для craftersmine
31 / 29 / 9
Регистрация: 06.06.2014
Сообщений: 373
12.08.2022, 13:19
Попробуй передать полученные куки из Postman в коде твоего приложения, если пустит, значит сессия в куках, если нет, значит либо в Local Storage, или ещё где нибудь
0
0 / 0 / 0
Регистрация: 17.03.2022
Сообщений: 20
16.08.2022, 04:57  [ТС]
sau, Приветствую. Почему нерабочий? На сколько знаю до сих пор используется. Что тогда использовать вместо? мне нужно спарсить информацию с сайта

craftersmine, Вроде как авторизует. Я правильно понимаю схему - отправляю POST запрос - получаю куки - добавляю их в CookiContainer и использую их далее при работе с сайтом?
0
 Аватар для craftersmine
31 / 29 / 9
Регистрация: 06.06.2014
Сообщений: 373
18.08.2022, 12:05
Ну обычно всегда так работает

Ввод данных авторизации -> Получение сессии (токен, ключ сессии, и т.д.) -> Отправка запросов (вместе передаем сессию)

А вот как сессия получается, где хранится и как передается, зависит от разраба сайта (API). Может через куки, может в Local Storage, может в заголовке авторизации, например "Authorization: Bearer <api_key>".

В данном случае на сайте API нет, значит используется один из первых двух вариантов, и обычно все таки используется первый, так как при привязке cookie из Postman тебя авторизовало, значит реализуй функционал авторизации на своей стороне, получай куки и посылай их вместе со своим запросом.
1
0 / 0 / 0
Регистрация: 17.03.2022
Сообщений: 20
30.08.2022, 08:12  [ТС]
craftersmine,
Авторизоваться из программы удалось, через куки. Ответ с сайта сохранил в файл. Но в ответе явно не только код начальной страницы сайта, а куча еще всего. Честно говоря пока не сообразил, что с этим делать дальше
Вложения
Тип файла: docx Response.docx (85.2 Кб, 6 просмотров)
0
 Аватар для craftersmine
31 / 29 / 9
Регистрация: 06.06.2014
Сообщений: 373
30.08.2022, 18:06
Почему, это вся страница, со всеми скриптами, CSS, комментариями, так как это не API, это по идее и будет ответ сервера. Просто не всегда все скрипты и CSS в файлы отдельные выносят, иногда есть встроенные в страницу
0
 Аватар для sau
2773 / 2073 / 386
Регистрация: 22.07.2011
Сообщений: 7,820
31.08.2022, 13:27
Цитата Сообщение от Si02 Посмотреть сообщение
Почему нерабочий? На сколько знаю до сих пор используется. Что тогда использовать вместо? мне нужно спарсить информацию с сайта
ну если вам нужно спарсить информацию , а информация строится с помощью js (на примере выгруженной вами страницы) , то получить вы ее сможете только выполнив js , а для этого нужны интепритатор js , работа с dom , и прочие штуки , которые реализованы в браузере (и которых , разумеется , нет в простом httpClient-е) - соответственно , самый простой вариант это использовать браузерный движок.
1
0 / 0 / 0
Регистрация: 17.03.2022
Сообщений: 20
07.09.2022, 05:03  [ТС]
sau, "использовать браузерный движок" - это, например, реализовать через Selenium? Верно понимаю?
0
 Аватар для sau
2773 / 2073 / 386
Регистрация: 22.07.2011
Сообщений: 7,820
07.09.2022, 14:49
Si02, selenium это унифицированное апи для различных браузерных драйверов , т.е что бы разработчики не забивали себе голову изучением спецификаций под тот или иной драйвер. Но в целом на рынке много различных приложений для автоматизации работы с браузером , даже в облаках решения есть. Под браузерным движком я имел ввиду именно браузерный движок , а с помощью какой технологии или апи вы будете его использовать это уже от проекта зависит.
1
0 / 0 / 0
Регистрация: 17.03.2022
Сообщений: 20
19.09.2022, 13:16  [ТС]
sau, А есть какие-то примеры? Чтоб без открытия окна браузера работать, а не как в Selenium? Вариантов оч много, не знаю, что искать и выбрать
0
 Аватар для sau
2773 / 2073 / 386
Регистрация: 22.07.2011
Сообщений: 7,820
19.09.2022, 16:37
Цитата Сообщение от Si02 Посмотреть сообщение
Чтоб без открытия окна браузера работать
полагаю , у большинства браузеров есть такая возможность , https://developer.chrome.com/blog/headless-chrome/ - соответственно вы можете передать эту настройку через тот же selenium , а если воспользуетесь кастомным движком типа PhantomJS , CasperJs и т.п. то они изначально без окон. , или теми же программами вроде зенапостера или bas , в общем это все настраивается. Если юзать облачные решения, аля browserstack , Import.io, Mozenda , Octoparce, ,ParseHub.... - то там просто апи , все вычисления на стороне облака и на вашей машине никаких окон и браузеров не будет. Так же можно воспользоваться webview комонентами для автоматизации , почти в любом UI фреймворке таковой имеется.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.09.2022, 16:37
Помогаю со студенческими работами здесь

Друпал: аутентификация на сайте
Всем привет. Движок Друпал 7.36. При регистрации на сайте новые пользователи не получают писем с инструкцией для подтверждения...

Аутентификация и ее проверка на сайте
Пишу программу для аутентификации на сайте которая пишет удалось или не удалось войти на сайт. Сделал вроди бы все верно но сервер при...

Правильная аутентификация на сайте
Всем привет. Возник вопрос - как правильно реализовать аутентификацию на сайте? Проблема больше в запоминании пользователя на...

Голосовая аутентификация на сайте
Есть на данный момент какая-то программа для прохождения авторизации пользователей на сайте по ГОЛОСУ? То-есть &quot;Ваня&quot; под своим...

Аутентификация на сайте с проверкой личности
Доброго времени суток! Есть приложение, часть пользователей не в домене и никогда в нем не будут (внешние пользователи сервиса), однако...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru