Показать сообщение отдельно
  #6  
Старый 09.02.2009, 03:27
Аватар для Aristarh Dark
Aristarh Dark Aristarh Dark вне форума
Модератор
 
Регистрация: 07.10.2005
Адрес: Москва
Сообщения: 2,907
Версия Delphi: Delphi XE
Репутация: выкл
По умолчанию

Вот небольшой примерчик получения капчи с сайта отправки СМС на МТС
Код:
var
  sitedata:TStringList;
  start,finish:integer;
  capcha:TFileStream;
  capfile:string;
begin
  //Данные
  MainForm.IdCookieManager.CookieCollection.Clear;
  sitedata:=TStringList.Create;
  sitedata.Text:=MainForm.IdHTTP.Get('http://sms.mts.ru/live/smsxtra.aspx?region=msk');
  start:=posex('value="',sitedata.Text,pos('__LBD_VCT_live_smsxtra_ctl00_ctl00_ctl00_smssendcontrol_captcha',sitedata.Text))+7;
  MTSCapchaID:=copy(sitedata.Text,start,32);

  sitedata.Free;
  //Капча
  capfile:=ExtractFilePath(Application.ExeName)+Format('MTS\%s.gif',[MTSCapchaID]);
  capcha:=TFileStream.Create(capfile,fmCreate);
  MainForm.IdHTTP.Get( Format(
   'http://sms.mts.ru/live/QACaptcha.aspx?get=image&c=live_smsxtra_ctl00_ctl00_ctl00_smssendcontrol_captcha&t=%s&s=%s',
   [MTSCapchaID,MainForm.IdCookieManager.CookieCollection.Items[0].Value]),
   capcha
  );
  capcha.Free;
__________________
Некоторые программисты настолько ленивы, что сразу пишут рабочий код.

Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты.
Ответить с цитированием