Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 6 408

/ вопрос открыт /

Здравствуйте, эксперты! Кто-нибудь имел опыт логиниться на Ucoz через компонент IdHTTP?

Приложение:
  1.  
  2.  
  3. <?xml version="1.0" encoding="UTF-8"?><ajax><cmd p="innerHTML" t="blk549827"><![CDATA[<div align="left" style="padding:10px;"><div class="myWinLoadSD"></div></div>]]></cmd><cmd p="js"><![CDATA[var ad=window.location.href.replace(/#(.*)?/,''); setTimeout("window.location.href='"+ad+"?lII_d7'",'1000')]]></cmd></ajax>
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14. function LoginUCOZ(log, pass, site: string): boolean;
  15. var sl, sl2: TStrings;
  16. i: Integer;
  17. Stream: TMemoryStream;
  18. s: string;
  19. begin
  20. Result:= False;
  21. sl := TStringList.Create;
  22. sl2 := TStringList.Create;
  23. sl.Add('user=log');
  24. sl.Add('password=pass');
  25. sl.Add('rem=1');
  26. Stream:= TMemoryStream.Create;
  27. IdHTTP4.get(site, Stream);
  28. Stream.Seek(0, soFromBeginning);
  29. sl2.LoadFromStream(Stream);
  30. for i:= 0 to sl2.Count - 1 do
  31. begin
  32. if (Pos('<input type="hidden" name="a" value="', sl2.Strings[i]) <> 0) and (Pos('!-- </bc> -->', sl2.Strings[i]) <> 0) then
  33. sl.Add('a=' + Copy(sl2.Strings[i], Pos('<input type="hidden" name="a" value="', sl2.Strings[i])+Length('<input type="hidden" name="a" value="'), 1));
  34.  
  35. if (Pos('<input type="hidden" name="ajax" value="', sl2.Strings[i]) <> 0) and (Pos('!-- </bc> -->', sl2.Strings[i]) <> 0) then
  36. sl.Add('ajax=' + Copy(sl2.Strings[i], Pos('<input type="hidden" name="ajax" value="', sl2.Strings[i])+Length('<input type="hidden" name="ajax" value="'), 1));
  37.  
  38. if (Pos('<input type="hidden" name="rnd" value="', sl2.Strings[i]) <> 0) and (Pos('!-- </bc> -->', sl2.Strings[i]) <> 0) then
  39. sl.Add('rnd=' + Copy(sl2.Strings[i], Pos('<input type="hidden" name="rnd" value="', sl2.Strings[i]) + Length('<input type="hidden" name="rnd" value="'), 3));
  40. end;
  41. sl.Add('_tp_=xml');
  42. try
  43. try
  44. sl2.Text:= IdHTTP4.Post(site + '/index/sub/', sl);
  45. for i:= 0 to sl2.Count - 1 do
  46. if Pos('setTimeout("window.location.href=', sl2.Strings[i]) <> 0 then
  47. begin
  48. s:= Copy(sl2.Strings[i], Pos('setTimeout("window.location.href=', sl2.Strings[i]) + Length('setTimeout("window.location.href=')+7, Pos('1000', sl2.Strings[i])- 4 -Pos('setTimeout("window.location.href=', sl2.Strings[i]) - Length('setTimeout("window.location.href=')-7);
  49. Stream:= TMemoryStream.Create;
  50. IdHTTP4.get('http://eclipse-lab.ucoz.ru/' + s, Stream);
  51. Stream.Seek(0, soFromBeginning);
  52. sl2.LoadFromStream(Stream);
  53. end;
  54. finally
  55. sl2.SaveToFile(ExtractFilePath(Application.ExeName) + '\site.html');
  56. for i:= 0 to sl2.Count - 1 do
  57. if Pos('<a href="' + site + '/index/10"', sl2.Strings[i]) <> 0 then
  58. Result:= True;
  59. end;
  60. except
  61. sl2.Free;
  62. sl.Free;
  63. end;


eclipse Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задал: eclipse (статус: Посетитель)
Вопрос отправлен: 7 апреля 2013, 20:03
Состояние вопроса: открыт, ответов: 0.


Мини-форум вопроса

Мини-форум пуст.

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:52
Выполнено за 0.02 сек.