|
sendmessage, отправка нажатий в браузер
|
|||
---|---|---|---|
#18+
предисловие необходимо программно авторизоваться на сайте. при помощи selenium запускаю браузер, могу вводить логин и пароль, но сайт считает, что поля пустые и требует именно ручного ввода. решил посылать нажатия из .ехе приложения в браузер. запускаю код, навожусь на браузер. считываю по таймеру hwnd активного окна(браузера). получаю handle рабочей зоны по имени класса, взятого из spy++. посылаю туда SendMessage Код: vbnet 1. 2. 3.
программа вылетает с ошибкой System.InvalidCastException: "Приведение строки "" к типу "Integer" является недопустимым." объявления(по интернету их десятки, пробовал разные комбинации): Код: vbnet 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2020, 11:05 |
|
sendmessage, отправка нажатий в браузер
|
|||
---|---|---|---|
#18+
По-моему ты каким-то вообще не тем путем идешь. Возможно, там на сервере какая-то защита, наподобии antifiorgery-токена, поэтому простой отправки логина и пароля недостаточно для авторизации - трейси девтулзой весь процесс "ручного" логина и смотри HTML/HTTP на тему что такое ты при программном логине упускаешь (какое-нибудь скрытое поле или кука). ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2020, 11:37 |
|
sendmessage, отправка нажатий в браузер
|
|||
---|---|---|---|
#18+
fkthat, кучу литературы перечитал, пишут, нельзя на чистом js имитировать нажатие на клавиши. мне бы уже хоть как-то авторизоваться, пусть и с костылями через vb.net, слишком много времени на это убил. например, берем любой сайт, вот твиттер: https://mobile.twitter.com/login?lang=ru вот код, который можно запустить в браузере. Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
текстовые поля введутся, то кнопка "войти" не станет активной ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2020, 11:47 |
|
sendmessage, отправка нажатий в браузер
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2020, 11:58 |
|
sendmessage, отправка нажатий в браузер
|
|||
---|---|---|---|
#18+
qlewerok текстовые поля введутся, то кнопка "войти" не станет активной Тебе вообще не нужно нажимать никакие клавиши - сделай просто программно HTTP запрос такой же, какой отправляется при "человеческой" авторизации. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2020, 12:26 |
|
sendmessage, отправка нажатий в браузер
|
|||
---|---|---|---|
#18+
fkthat, как я узнаю, каким должен быть запрос? какие программы\средства? на примере твиттера, например ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2020, 12:33 |
|
sendmessage, отправка нажатий в браузер
|
|||
---|---|---|---|
#18+
qlewerok как я узнаю, каким должен быть запрос? какие программы\средства? на примере твиттера, например Браузерные DevTools (F12), или Fiddler. Там, может быть, конечно, не все просто, но, думаю, расковырять это при желании можно. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2020, 13:11 |
|
sendmessage, отправка нажатий в браузер
|
|||
---|---|---|---|
#18+
fkthat, получилось, авторизация прошла, спасибо) в итоге сделал ещё проще: заставляю пользователя самого авторизоваться 1 раз. так даже лучше, нет мороки с картинками, кодами в смс и тд. после авторизации копирую его куки Код: vbnet 1.
раскладываю этот массив на строки, беру имя и значение, запихиваю в другое окно Код: vbnet 1.
и после рефреша окна там проходит авторизация. минус: приходится грузить страницу, потом засовывать куку и обновлять страницу. итого страница грузится два раза, это долго( как сразу отправлять куки при обращению к сайту, я не нашёл ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2020, 22:31 |
|
sendmessage, отправка нажатий в браузер
|
|||
---|---|---|---|
#18+
qlewerok заставляю пользователя самого авторизоваться 1 раз. так даже лучше, нет мороки с картинками, кодами в смс и тд. после авторизации копирую его куки А, ну если это возможно, то, конечно, тогда это совсем просто. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2020, 22:50 |
|
|
start [/forum/topic.php?fid=20&msg=40024165&tid=1398411]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
29ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 123ms |
0 / 0 |