|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
Получение значение переменной со страницы
Здравствуйте, подскажите пожалуйста как можно получить значение:
icq_ln Код:
<input type="hidden" name="icq_ln" value="...<всегда разное>..."> https://www.icq.com/karma/login_page.php По сути это ИД Сессии, чтобы затем мне авторизоваться через сайт, необходимо получить как-то это значение. В куках браузера оно записывается.. получается, что тут нужно либо как-то загрузить, т.е. получить эти куки с сервера, либо загрузить эту страницу и найти эту строку, затем её использовать. (предпочтительнее вариант тот, где уйдет меньше трафика, но если по другому никак, лучше уж любой, чем ничего). использую Client Socket. Но у меня не получается никак, возможно из-за того, что соединение зашифрованное (https).. Помогите пожалуйста Я пробовал и GET и POST..порт для https - 443. Пробовал и через 80 порт, тоже никак. Пробовал по разному формировать запрос: Код:
'GET https://www.icq.com/karma/login_page.php HTTP/1.0' + #13#10+ 'Accept: */*' + #13#10+ 'Accept-Language: en-us' + #13#10+ 'Accept-Encoding: deflate' + #13#10+ 'User-Agent: Mozilla/4.0 (compatible; MSIE 4.01; Windows 98)' + #13#10+ 'Host: icq.com' + #13#10+ 'Connection: Keep-Alive' + #13#10+#13#10; Подскажите пожалуйста, очень надеюсь на помощь знающих людей. Если Вы находите ошибки, исправить которые дело долгое и нудное, ничего не делайте - просто внесите их в список особенностей |
#2
|
||||
|
||||
Через что? ClientSocket, WinSock, Indy?
На ClientSocket сработало: Код:
'GET /karma/login_page.php HTTP/1.1' + #13#10+ 'User-Agent: PhoeniX/5.0 (compatible; MSIE 8.0; Windows Vista)' + #13#10+ 'Host: icq.com' + #13#10+ 'Connection: Keep-Alive' + #13#10; Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj |
#3
|
||||
|
||||
Что не так ???
Skt - это TClientSocket;
Нажимаю кнопку, вот обработка: Код:
Skt.Host := 'icq.com'; Skt.Port := 80; res:='GET /karma/login_page.php HTTP/1.1' + #13#10+ 'User-Agent: PhoeniX/5.0 (compatible; MSIE 8.0; Windows Vista)' + #13#10+ 'Host: icq.com' + #13#10+ 'Connection: Keep-Alive' + #13#10#13#10; Skt.Open; Код:
обработка sktConnect(Sender: TObject; Socket: TCustomWinSocket); begin Skt.Socket.SendText(res); end; Код:
обработчик sktRead(Sender: TObject; Socket: TCustomWinSocket); begin ShowMessage(Socket.ReceiveText); end; Код:
HTTP/1.1 302 Found Date: Sat, 26 Sep 2009 08:57:23 GMT Server: Apache Expires: Mon, 20 Dec 1998 01:00:00 GMT Last-Modified: Sat, 26 Sep 2009 08:57:23 GMT Cache-Control: no-store, no-cache, must-revalidate Pragma: no-cache Location: https://www.icq.com/karma/login_page.php P3P: CP="ONL UNI COM PHY NAV INT DEM CURo OUR" Keep-Alive: timeout=6, max=50 Connection: Keep-Alive Transfer-Encoding: chunked Content-Type: text/html И затем ещё присылает данные(размер буфера 5), но если прочитать это как число, то получается, что это 218762544 Socket.ReceiveBuf(i,Socket.receivelength); что это такое тоже не понятно(.. Если Вы находите ошибки, исправить которые дело долгое и нудное, ничего не делайте - просто внесите их в список особенностей Последний раз редактировалось Oleg, 26.09.2009 в 13:10. |
#4
|
||||
|
||||
Прошу, инфо для размышления. Почти готовый экземпляр.
Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj Последний раз редактировалось PhoeniX, 06.05.2011 в 08:52. |
#5
|
||||
|
||||
Спасибо за пример, но ничего нового в нем для себя не открыл .
Нет там того параметра, который мне нужен, а эту страницу с ошибкой я уже получал.."Oops..." Если Вы находите ошибки, исправить которые дело долгое и нудное, ничего не делайте - просто внесите их в список особенностей |
#6
|
||||
|
||||
Тэкс... с помощью Charles подсмотрел заголовки:
Код:
GET /karma/login_page.php HTTP/1.1 Host: www.icq.com User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; ru; rv:1.9.0.10) Gecko/2009042316 Firefox/3.0.10 (.NET CLR 3.5.30729) WebMoney Advisor Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: ru,en-us;q=0.7,en;q=0.3 Accept-Encoding: gzip,deflate Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7 Keep-Alive: 300 Connection: keep-alive Cookie: icq_ln=943663F1A4DABBF99313BC37244232E8A571919715AFEAA1F8E9B78A32FC618C; icq_client_ver=605; icq_client_lang_id=1033; icq_client_dest=30007; icq_client_partner_id=0; geo=7; karma_ud=sn=7091498,sk=-356083494; icq_user_age=0; icq_user_gender=0; icq_lang=ru; s_cc=true; s_sq=%5B%5BB%5D%5D Вывод - что-то тут не так... Постораюсь разобраться. Интересная фигня... Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj |
#7
|
||||
|
||||
В том то и дело, что "интересная фигня"..
поэтому и задал соответствующий вопрос, надеясь на общую помощь. Т.к. одному не получается разобраться никак.. Не понятно как генерируются куки, т.е. именно icq_ln. В куках он есть, но с сервера подобное не приходит. (анализировал программой для перехвата http пакетов). Если Вы находите ошибки, исправить которые дело долгое и нудное, ничего не делайте - просто внесите их в список особенностей Последний раз редактировалось Oleg, 26.09.2009 в 16:06. |
#8
|
||||
|
||||
это видимо у меня) ибо я уже был на этом сайте.
Офф: пятисотое сообщение!!!! Яххууууу!!!!!!!! Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj |
#9
|
||||
|
||||
Цитата:
Если Вы находите ошибки, исправить которые дело долгое и нудное, ничего не делайте - просто внесите их в список особенностей |