Форум программистов, компьютерный форум, киберфорум
Delphi: Сети
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
5 / 5 / 0
Регистрация: 02.03.2013
Сообщений: 23
1

Авторизация UCOZ

22.03.2013, 15:56. Показов 1132. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
И снова я обращаюсь к вам за помощью.

Дорогие знатоки, подскажите мне, желательно кодом, с пояснением.

Я пишу программу, для покупки в 1 онлайн магазине на UCOZ`е, программку.
Задумка до жути проста.

1. Авторизация на портале (Засада).
2. Шопинг в магазине через TwebBrowser. (Тут все гладко).



Суть проблемы.

Заполнив поля, я кликаю по буттону, и вроде как, происходит авторизация. Но в TWebBrowser, нуль реакции, как был "Гостем", так и остался.

Пыхчу уже не 1ые сутки. Нашел исходник авторизации на UCOZ`e в сети, но видать он не валидный.

Мой код:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
var
  Form1: TForm1;
  Data:TStringList;
  Request, s, p,g :String;
 
implementation
 
{$R *.dfm}
 
function TForm1.Pars(T_, ForS, _T: string): string;
var
  a, b: integer;
begin
  Result := '';
  if (T_ = '') or (ForS = '') or (_T = '') then
    Exit;
  a := Pos(T_, ForS);
  if a = 0 then
    Exit
  else
    a := a + Length(T_);
  ForS := Copy(ForS, a, Length(ForS) - a + 1);
  b := Pos(_T, ForS);
  if b > 0 then
    Result := Copy(ForS, 1, b - 1);
end;
 
 
 
 
procedure TForm1.sButton2Click(Sender: TObject);
begin
s:=IdHTTP1.Post('http://cheat-master.ru/index/10',Data);
end;
 
procedure TForm1.sButton1Click(Sender: TObject);
begin
Data:=TStringList.Create;
s:=IdHTTP1.Post('http://cheat-master.ru',Data);
p:=pars('name="rnd" value="', s, '"' );
Data.Add('user='+sEdit1.Text);
Data.Add('password='+sEdit2.Text);
Data.Add('rem=1');
Data.Add('a=2');
Data.Add('ajax=1');
Data.Add('rnd='+p);
Data.Add('_tp_=xml');
 
 
IdHTTP1.Request.Host:='http://cheat-master.ru/';
idHTTP1.Request.UserAgent:= 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22';
idHTTP1.Request.Accept := 'application/xml, text/xml, */*; q=0.01';
idHTTP1.Request.AcceptEncoding := 'gzip,deflate,sdch';
idHTTP1.Request.AcceptLanguage := 'ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4';
idHTTP1.Request.AcceptCharset := 'windows-1251,utf-8;q=0.7,*;q=0.3';
IdHTTP1.Request.Connection := 'keep-alive';
IdHTTP1.Request.ContentType := 'application/x-www-form-urlencoded; charset=Unicode';
IdHTTP1.Request.Referer :='http://cheat-master.ru';
idHTTP1.Request.Pragma:= 'no-cache';
idHTTP1.Request.CacheControl := 'no-cache';
try
Request:=idHTTP1.Post('http://cheat-master.ru/index/sub/',Data);
s:=IdHTTP1.Post('http://cheat-master.ru/tmpls/?a=fm;l=7;f=;file=obv.txt',Data);
g:=pars('<input type="hidden" name="ssid" value="', s, '">' );
finally
Data.Clear;
Request:='';
s:='';
g:='';
p:='';
end;
end;
procedure TForm1.IdHTTP1Work(Sender: TObject; AWorkMode: TWorkMode;
  const AWorkCount: Integer);
begin
ProgressBar1.Position := AWorkCount;
end;
 
procedure TForm1.IdHTTP1WorkBegin(Sender: TObject; AWorkMode: TWorkMode;
  const AWorkCountMax: Integer);
begin
ProgressBar1.Position := 0;
 ProgressBar1.Max := AWorkcountMax;
end;
 
procedure TForm1.FormCreate(Sender: TObject);
begin
WebBrowser1.Navigate('about:blank');
end;
 
procedure TForm1.sButton3Click(Sender: TObject);
begin
webBrowser1.Navigate('http://cheat-master.ru/shop');
end;
Компилятор, не ругается.

Добавлено через 15 часов 20 минут
Никто не делал такого рода программ?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.03.2013, 15:56
Ответы с готовыми решениями:

Многопоточная авторизация на ucoz
Здравствуйте! У меня проблема! Я новичок! И так. Я пишу программу для многопоточной авторизации...

Авторизация на сайте ucoz
Ребят помогите пожалуйста конкретным примером авторизацие на сайте ucoz?

Авторизация на сайте ucoz
Мне нужно через программу авторизироваться на сайте ucoz. Не просто с помощью idHTTP, сразу по...

Ucoz авторизация на IdHTTP
Здравствуйте уважаемые форумчане. Задался решением проверки авторизации программ. К примеру- на...

5
Android
245 / 242 / 52
Регистрация: 19.01.2013
Сообщений: 1,896
Записей в блоге: 3
22.03.2013, 17:22 2
все там нормально, я только логики не понимаю! ты авторизуешься с помощью Idhttp а нужно c webbrowser
1
5 / 5 / 0
Регистрация: 02.03.2013
Сообщений: 23
22.03.2013, 18:01  [ТС] 3
kaspersky, Как мне совместить то?
0
Android
245 / 242 / 52
Регистрация: 19.01.2013
Сообщений: 1,896
Записей в блоге: 3
22.03.2013, 18:13 4
так можно с помощью webbrowser авторизоваться.
Delphi
1
2
3
4
5
6
7
8
9
10
11
procedure TForm1.Button1Click(Sender: TObject);
var
a:variant;
begin
a:=webbrowser1.oleobject.document.getelementbyid('user');
a.value:='login';
a:=webbrowser1.oleobject.document.getelementbyid('password');
a.value:='пароль';
a:=webbrowser1.oleobject.document.getelementbyid('sbm');
a.click;
end;
Добавлено через 5 минут
только с начало нужно чтобы сайт был загружон в Webbroweser

Delphi
1
webbrowser1.navigate('http://cheat-master.ru/');
1
5 / 5 / 0
Регистрация: 02.03.2013
Сообщений: 23
22.03.2013, 19:13  [ТС] 5
kaspersky , Так пока и сделано, но в планах было сделать так:

Delphi
1
2
3
4
5
6
7
8
procedure TForm1.WebBrowser1BeforeNavigate2(Sender: TObject;
  const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
  Headers: OleVariant; var Cancel: WordBool);
begin
cancel:=true;
if pos('shop',url)>0 then cancel:=false;
 
end;
Добавлено через 57 секунд
kaspersky, можно ли авторизовываться в TWebBrowser2? То есть, сохраниться ли авторизация в TwebBrowser1?
0
Android
245 / 242 / 52
Регистрация: 19.01.2013
Сообщений: 1,896
Записей в блоге: 3
23.03.2013, 09:15 6
Цитата Сообщение от ChocoCube Посмотреть сообщение
kaspersky , Так пока и сделано, но в планах было сделать так:

Delphi
1
2
3
4
5
6
7
8
procedure TForm1.WebBrowser1BeforeNavigate2(Sender: TObject;
  const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
  Headers: OleVariant; var Cancel: WordBool);
begin
cancel:=true;
if pos('shop',url)>0 then cancel:=false;
 
end;
Добавлено через 57 секунд
kaspersky, можно ли авторизовываться в TWebBrowser2? То есть, сохраниться ли авторизация в TwebBrowser1?
конечно сохраняются, TwebBrowser это просто ActiveX контрол Microsoft's Internet Explorer и все настройки кэшы кукисы всё всё сохраняется в IE
1
23.03.2013, 09:15
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.03.2013, 09:15
Помогаю со студенческими работами здесь

Авторизация на UCOZ и последующая загрузка сайта
Уважаемые пользователи, при создании программки возникла проблема: После того как авторизовался в...

Регистратор uCoz
Здравствуйте! Я новичок в delphi, вот решил для начала сдеать регистратор на сайтах uCoz. При...

Добавление статей на ucoz
Доброго времени суток. Хочу реализовать в программе добавление статьи в &quot;Каталог статей&quot; на ucoz....

Проблемы с авторизацией на форуме UCOZ
Помогте пройти авторизацию на юкоз форуме Деаю так: var params,responseres:tstringlist; begin...

Post запрос. Регистрация на сайте Ucoz
Приветствую. В общем тема такая: пишу регистратор Ucoz Получаю все параметры для пост запроса со...

Парсинг ссылок на ucoz сайт
Как создать парсер что бы добавлял ссылки на сайт? Меня интересует как вставить ссылку на сайт?...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru