Форум: "Сети";
Текущий архив: 2009.05.10;
Скачать: [xml.tar.bz2];
ВнизTIdHTTP+TidSSLIOHandlerSocket парсинг! Найти похожие ветки
← →
Lamer666 (2008-02-12 13:16) [0]Добрый день уважаемые!
Взялся за тяжелый (на мой взгляд) проект, парсинг с https по средствам TIdHTTP+TidSSLIOHandlerSocket и наткнулся на множество проблем (как и многие в прочем)
Задача получит данные о балансе НОМЕРА!!!
Помогите пожалуйсто!procedure TForm1.Button1Click(Sender: TObject);
var
SSLIO: TidSSLIOHandlerSocket;
ProxyUse,ProxyAuth,UseSSL: boolean;
body: string;
HTTP: TIdHTTP;
THURL: string;
begin
ProxyUse := true;
ProxyAuth := true;
UseSSL := true;
THURL := "https://issa.samara.mts.ru/SelfCare_Net2/account-status.aspx";
Http := TIdHTTP.Create(nil);
Http.Request.Username := "Номер телефона";
Http.Request.Password := "Пароль";
try
Http.HTTPOptions := [hoInProcessAuth];
Http.HandleRedirects := true;
Http.AuthRetries := 1;
if UseSSL then begin
SSLIO := TidSSLIOHandlerSocket.Create(Http);
Http.IOHandler := SSLIO;
SSLIO.SSLOptions.Method := sslvTLSv1;
it will be encrypted.
basic and SSL breaks it.
Http.Request.BasicAuthentication := true;
end;
body := Http.Get(THURL);
Memo1.Clear; //(ТУТ ПОЛУЧАЮ ОШИБКУ socket error # 11004)
Memo1.Lines.Add(body);
finally
if http.ResponseCode = 401 then
showmessage("Authorisation required!");
if UseSSL then SSLIO.Free;
Http.Free;
end;
end;
Вообще запустил HttpAnalyzerSTD, показывает:
Что выполняеться последовательно 1 POST и 8 GET процессов...
Может ли ктонибудь объяснить что мне нужно отправлять для получения нужной информации. Анализируя процессы, вижу что необходимый мен результат возвращяет последний GET/
Поможте пожалста!
← →
Lamer666 (2008-02-12 13:36) [1]
body := Http.Get(THURL);//(ТУТ ПОЛУЧАЮ ОШИБКУ socket error # 11004)
← →
umbra © (2008-02-12 13:40) [2]
> ТУТ ПОЛУЧАЮ ОШИБКУ socket error # 11004
Невозможно найти IP сервера по заданному имени (Полное описание ошибки: Затребованое имя допустимо и оно найдено в базе данных, но для имени отсутствуют связанные с ним данные, которые были разрешены для него (11004) on API "ASync Lookup")
Смотрите на ответы сервера в процессе 1 POST-а и 8 GET-ов, может что-то прояснится.
← →
Lamer666 (2008-02-12 14:02) [3]
> umbra © (12.02.08 13:40) [2]
Спасибо! Сейчас буду разбираться!
← →
Lamer666 (2008-02-12 15:37) [4]Ну что ж, немного посмотрел, решил ВЫПОЛНИТЬ первый POST
Что передовать в качестве параметров?
В HTTPANALYZER-е есть:
Headers:
1.Request Headers
(Request-Line):POST /SelfCare_Net2/login.aspx HTTP/1.1
Accept:*/*
Referer:https://issa.samara.mts.ru/SelfCare_Net2/
Accept-Language:ru
Content-Type:application/x-www-form-urlencoded
UA-CPU:x86
Accept-Encoding:gzip, deflate
User-Agent:Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; EmbeddedWB 14,52 from: http://www.bsalsa.com/ EmbeddedWB 14,52; .NET CLR 2.0.50727)
Host:issa.samara.mts.ru
Content-Length:1508
Connection:Keep-Alive
Cache-Control:no-cache
Cookie:FORIS.TelCRM.SelfCare.Internet.UI.Language=ru; ASP.NET_SessionId=1clid12icv14ql45mkzbcfat
2.Responce Headers
(Status-Line):HTTP/1.1 302 Found
Date:Tue, 12 Feb 2008 11:57:07 GMT
Server:Microsoft-IIS/6.0
X-Powered-By:ASP.NET
X-AspNet-Version:2.0.50727
Location:/SelfCare_Net2/login-wait.aspx
Set-Cookie:.ASPXAUTH=; expires=Mon, 11-Oct-1999 19:00:00 GMT; path=/; HttpOnly
Set-Cookie:FORIS.TelCRM.SelfCare.Internet.UI.Language=ru; expires=Mon, 12-May-2008 10:57:07 GMT; path=/
Set-Cookie:.ASPXAUTH=3D5609C6DE2FF536EE0FDB8002E61312E28E2D1492176C17DDD9DF18BBA4DB6 B606DED1AA5F075B92C64C5B00574FC17604C3D34A0F53E6613D9822C2143C1E692C8F0017CC7DD9 DD7112C7DF780A730; path=/; HttpOnly
Cache-Control:private
Expires:Tue, 12 Feb 2008 11:57:07 GMT
Content-Type:text/html; charset=utf-8
Content-Length:25015
Далее имеем:
Cookies:
1.Cookie Name
FORIS.TelCRM.SelfCare.Internet.UI.Language=ru
ASP.NET_SessionId=1clid12icv14ql45mkzbcfat
2. Set-Cookie Name:
.ASPXAUTH / Mon, 11-Oct-1999 19:00:00 GMT
FORIS.TelCRM.SelfCare.Internet.UI.Language ru / Mon, 12-May-2008 10:57:07 GMT
.ASPXAUTH 3D5609C6DE2FF536EE0FDB8002E61312E28E2D1492176C17DDD9DF18BBA4DB6B606DED1AA5F075B9 2C64C5B00574FC17604C3D34A0F53E6613D9822C2143C1E692C8F0017CC7DD9DD7112C7DF780A730 /
Post data:
__EVENTTARGET=
__EVENTARGUMENT=
__VIEWSTATE=/wEPDwULLTE1NjkzMzkzNTAPZBYCZg9kFgICAw8WAh4Gb25sb2FkBUtqYXZhc2NyaXB0OmRvY3VtZW50L mdldEVsZW1lbnRCeUlkKCdjdGwwMF9wbGFjZXJfcGhvbmVOdW1iZXJFZGl0JykuZm9jdXMoKTsWBGYPF gIeC18hSXRlbUNvdW50AgEWAmYPZBYCZg8VAhZsb2dpbi5hc3B4P2xhbmd1YWdlPWVuB2VuZ2xpc2hkA gEPZBYCZg9kFgoCAQ8PFgIeBFRleHQFHNCd0L7QvNC10YAg0YLQtdC70LXRhNC+0L3QsDpkZAIFDw8WAh8CBQ3Qn9Cw0YDQvtC70Yw6ZGQCCQ8PFgQeDEVycm9yTWVzc2FnZQXxAdCS0Ysg 0LLQstC10LvQuCDQvdC10LrQvtGA0YDQtdC60YLQvdGL0Lkg0L3QvtC80LXRgC4g0J3QtdC+0LHRhdC+0LTQuNC80L4g0LLQstC10YHRgtC4INC90L7QvNC10YAg0YLQtdC70LXRhNC+0L3QsCDQuNC3IDEwINGG0LjRhNGALCDRgSDRg9C60LDQt9Cw0L3QuNC10Lwg0LrQvtC00LAsINC90LDQ v9GA0LjQvNC10YAsIDQ5NTEyMzQ1NjcsINC4INC/0YDQuNC90LDQtNC70LXQttCw0YnQuNC5INGB0LXRgtC4INCc0KLQoS4eFFZhbGlkYXRpb25FeHByZXNz aW9uBQheXGR7MTB9JGRkAgsPDxYCHwMF8QHQktGLINCy0LLQtdC70Lgg0L3QtdC60L7RgNGA0LXQutGC 0L3Ri9C5INC90L7QvNC10YAuINCd0LXQvtCx0YXQvtC00LjQvNC+INCy0LLQtdGB0YLQuCDQvdC+0LzQtdGAINGC0LXQu9C10YTQvtC90LAg0LjQtyAxMCDRhtC40YTRgCwg0YEg0YPQutCw0LfQsNC90LjQ tdC8INC60L7QtNCwLCDQvdCw0L/RgNC40LzQtdGALCA0OTUxMjM0NTY3LCDQuCDQv9GA0LjQvdCw0LTQu9C10LbQsNGJ0LjQuSDRgdC10YL QuCDQnNCi0KEuZGQCDw8PFgIfAgUc0JLQvtC50YLQuCDQsiDRgdC40YHRgtC10LzRg2RkZCfHIgWOaD6 s5QPtaAW5VVN4mDLC
ctl00$placer$phoneNumberEdit=XXXXXXXXXX
ctl00$placer$passwordEdit=XXXXX
ctl00$placer$btnEnter=Войти в систему
__EVENTVALIDATION=/wEWBAKRtcHFCgKqu/iBCAKBh5uRCwKjnLtj9RZRkvv1pFIxn++P8SToherdW/Y=
STREAM:
POST /SelfCare_Net2/login.aspx HTTP/1.1
Accept: */*
Referer: https://issa.samara.mts.ru/SelfCare_Net2/
Accept-Language: ru
Content-Type: application/x-www-form-urlencoded
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; EmbeddedWB 14,52 from: http://www.bsalsa.com/ EmbeddedWB 14,52; .NET CLR 2.0.50727)
Host: issa.samara.mts.ru
Content-Length: 1508
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: FORIS.TelCRM.SelfCare.Internet.UI.Language=ru; ASP.NET_SessionId=1clid12icv14ql45mkzbcfat
__EVENTTARGET=&__EVENTARGUMENT=&__VIEWSTATE=%2FwEPDwULLTE1NjkzMzkzNTAPZBYCZg9kFgICAw8WAh4Gb25sb2FkBUtqYXZhc2NyaXB0OmRvY3VtZW5 0LmdldEVsZW1lbnRCeUlkKCdjdGwwMF9wbGFjZXJfcGhvbmVOdW1iZXJFZGl0JykuZm9jdXMoKTsWBGY PFgIeC18hSXRlbUNvdW50AgEWAmYPZBYCZg8VAhZsb2dpbi5hc3B4P2xhbmd1YWdlPWVuB2VuZ2xpc2h kAgEPZBYCZg9kFgoCAQ8PFgIeBFRleHQFHNCd0L7QvNC10YAg0YLQtdC70LXRhNC%2B0L3QsDpkZAIFDw8WAh8CBQ3Qn9Cw0YDQvtC70Yw6ZGQCCQ8PFgQeDEVycm9yTWVzc2FnZQXxAdCS0Y sg0LLQstC10LvQuCDQvdC10LrQvtGA0YDQtdC60YLQvdGL0Lkg0L3QvtC80LXRgC4g0J3QtdC%2B0LHRhdC%2B0LTQuNC80L4g0LLQstC10YHRgtC4INC90L7QvNC10YAg0YLQtdC70LXRhNC%2B0L3QsCDQuNC3IDEwINGG0LjRhNGALCDRgSDRg9C60LDQt9Cw0L3QuNC10Lwg0LrQvtC00LAsINC90L DQv9GA0LjQvNC10YAsIDQ5NTEyMzQ1NjcsINC4INC%2F0YDQuNC90LDQtNC70LXQttCw0YnQuNC5INGB0LXRgtC4INCc0KLQoS4eFFZhbGlkYXRpb25FeHByZX NzaW9uBQheXGR7MTB9JGRkAgsPDxYCHwMF8QHQktGLINCy0LLQtdC70Lgg0L3QtdC60L7RgNGA0LXQut GC0L3Ri9C5INC90L7QvNC10YAuINCd0LXQvtCx0YXQvtC00LjQvNC%2BINCy0LLQtdGB0YLQuCDQvdC%2B0LzQtdGAINGC0LXQu9C10YTQvtC90LAg0LjQtyAxMCDRhtC40YTRgCwg0YEg0YPQutCw0LfQsNC90L jQtdC8INC60L7QtNCwLCDQvdCw0L%2FRgNC40LzQtdGALCA0OTUxMjM0NTY3LCDQuCDQv9GA0LjQvdCw0LTQu9C10LbQsNGJ0LjQuSDRgdC10 YLQuCDQnNCi0KEuZGQCDw8PFgIfAgUc0JLQvtC50YLQuCDQsiDRgdC40YHRgtC10LzRg2RkZCfHIgWOa D6s5QPtaAW5VVN4mDLC&ctl00%24placer%24phoneNumberEdit=XXXXXXXXXX&ctl00%24placer%24passwordEdit=XXXXX&ctl00%24placer%24btnEnter=%D0%92%D0%BE%D0%B9%D1%82%D0%B8+%D0%B2+%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D1%83&__EVENTVALIDATION=%2FwEWBAKRtcHFCgKqu%2FiBCAKBh5uRCwKjnLtj9RZRkvv1pFIxn%2B%2BP8SToherdW%2FY%3D
Я так понимаю последнее и есть необходимые параметы?
← →
Lamer666 (2008-02-12 15:49) [5]Праильно лия понимаю, нужно ВЫПОЛНИТЬ POST, получить тем самым Cookies и а затем используя эти куки далее, или можно и без кукисов работать?
← →
ketmar © (2008-02-12 16:05) [6]>[5] Lamer666 (2008-02-12 15:49:00)
а ты проверь — и узнаешь.
---
Understanding is not required. Only obedience.
← →
Lamer666 (2008-02-12 16:24) [7]
> ketmar © (12.02.08 16:05) [6]
Это теоритическое предположение, основанное только лишь на интуиции, поэтому хоч услышать подтверждение МАСТЕРОВ, стоит ли идти в этом направлении, и вообще правильное ли оно?!
← →
ketmar © (2008-02-12 16:27) [8]>[7] Lamer666 (2008-02-12 16:24:00)
за пол-часа это можно было кучу раз проверить самому. откуда нам-то знать, что там твой сервер проверяет?
---
Understanding is not required. Only obedience.
← →
Lamer666 (2008-02-12 16:31) [9]Понятно, сейчас попробую, а метод GET будет работать без кукисов?
← →
ketmar © (2008-02-12 16:34) [10]>[9] Lamer666 (2008-02-12 16:31:00)
а чего ему не работать? вот сервер может обидеться. именно это ты и проверишь.
---
Understanding is not required. Only obedience.
← →
Slym © (2008-02-13 04:37) [11]включи кукисы, зачем их вручную парсить?
← →
Slym © (2008-02-13 04:42) [12]ктому же не средиректилося...
HTTP/1.1 302 Found
Location:/SelfCare_Net2/login-wait.aspx
а он повторно на /SelfCare_Net2/login.aspx щимится
← →
Lamer666 (2008-02-13 17:11) [13]
> включи кукисы, зачем их вручную парсить
А как из включить? : (
← →
umbra © (2008-02-13 17:29) [14]
> А как из включить?
прицепитьTIdCookieManager
кTIdHTTP
← →
Lamer666 (2008-02-13 17:37) [15]
> umbra © (13.02.08 17:29) [14]
Спасибо! Разобрался уже, нашел у idHTTP CookieManeger!
Спасибо!
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2009.05.10;
Скачать: [xml.tar.bz2];
Память: 0.51 MB
Время: 0.005 c