Модераторы: Snowy, Poseidon, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как мне проверить программу 
:(
    Опции темы
eViperEA
Дата 15.3.2008, 13:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 71
Регистрация: 13.3.2008

Репутация: нет
Всего: нет



Я хочу написать программу которая автоматически логинится на сайте... 
Полазил по форуму и вот что у меня получилось 
Код

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient,
  IdHTTP, IWVCLBaseControl, IWBaseControl, IWBaseHTMLControl, IWControl,
  IWTreeview, OleCtrls, SHDocVw;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Memo1: TMemo;
    IdHTTP1: TIdHTTP;
    WebBrowser1: TWebBrowser;
    procedure Button1Click(Sender: TObject);
private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
S: TStringList;
begin
memo1.Text:= IdHTTP1.Get('http://server.ru/index.php');
S:= TStringList.Create;
S.Add('success_url=');
S.Add('fail_url=');
S.Add('try_to_login=1');
S.Add('Login=eViper');
S.Add('password=eeeeee');
memo1.Text:=IdHTTP1.Post('http://server.ru/index.php?t=login', S);
end;
end.

Вроде бы никаких ошибок не выдает но я не знаю как мне проверить действительно ли он логинится ... 
Было бы хорошо еслиб вы мне подсказали как отобразить страничку в проге чтоб я видел что он зашел... и от туда начал работать...

Это сообщение отредактировал(а) eViperEA - 15.3.2008, 13:36

Присоединённый файл ( Кол-во скачиваний: 1 )
Присоединённый файл  Path.rar 3,16 Kb
PM MAIL   Вверх
creas0ft
Дата 15.3.2008, 14:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 117
Регистрация: 5.8.2006
Где: Саранск

Репутация: 2
Всего: 2



Код

memo1.Text:=IdHTTP1.Post('http://server.ru/index.php?t=login', S);
memo1.lines.savetofile('c:\test.html');

ну и смотри код )

p.s. да и зачем тебе первый get? И куда куки дел?! ;)
--------------------
Форум программистов уклонистов в сторону сео-шмео
PM MAIL WWW ICQ   Вверх
eViperEA
Дата 15.3.2008, 16:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 71
Регистрация: 13.3.2008

Репутация: нет
Всего: нет



Цитата(creas0ft @ 15.3.2008,  14:16)
Код

memo1.Text:=IdHTTP1.Post('http://server.ru/index.php?t=login', S);
memo1.lines.savetofile('c:\test.html');

ну и смотри код )

p.s. да и зачем тебе первый get? И куда куки дел?! ;)

 smile  Прописал строчку.. Он мне сохранил файл на с ... Зашел а там страничка которая ввод логин пароля предлагает... Возможно я чтото не так сделал?? 
PM MAIL   Вверх
creas0ft
Дата 15.3.2008, 16:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 117
Регистрация: 5.8.2006
Где: Саранск

Репутация: 2
Всего: 2



добавь менеджере печенек - свяжи его с http и сделай тоже самое, "убив" первый get.
Если и опять не та страница будет, надо снифить что передает браузер.
--------------------
Форум программистов уклонистов в сторону сео-шмео
PM MAIL WWW ICQ   Вверх
eViperEA
Дата 15.3.2008, 18:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 71
Регистрация: 13.3.2008

Репутация: нет
Всего: нет



Вставил куки менеджр и он все равно не заходит... 
Код

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient,
  IdHTTP, IWVCLBaseControl, IWBaseControl, IWBaseHTMLControl, IWControl,
  IWTreeview, OleCtrls, SHDocVw, IdCookieManager;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Memo1: TMemo;
    IdHTTP1: TIdHTTP;
    WebBrowser1: TWebBrowser;
    IdCookieManager1: TIdCookieManager;
    procedure Button1Click(Sender: TObject);
private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
S: TStringList;
begin
S:= TStringList.Create;
S.Add('Login=xxx');
S.Add('password=xxx');
memo1.Text:=IdHTTP1.Post('http://forum.trktvs.ru/index.php?t=login', S);
memo1.lines.savetofile('c:\test.html');
end;
end.

А вот код страницы...
Код

<tr class="RowStyleB">
<td class="GenText">Имя пользователя</td><td><input type="text" tabindex="1" name="login"></td>
<td nowrap><a href="index.php?t=register&amp;">Хотите зарегистрироваться?</a></td></tr>
<tr class="RowStyleA"><td class="GenText">Пароль:</td><td><input type="password" tabindex="2" name="password"></td>
<td nowrap><a href="index.php?t=reset&amp;">Я забыл пароль</a></td></tr>
<tr><td colspan=3 class="RowStyleA ar"><input type="submit" class="button" tabindex="3" value="Вход"></td></tr>


Это сообщение отредактировал(а) eViperEA - 17.3.2008, 08:49
PM MAIL   Вверх
creas0ft
Дата 15.3.2008, 19:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 117
Регистрация: 5.8.2006
Где: Саранск

Репутация: 2
Всего: 2



надо всю форму показывать а не так.
Ставь fiddler http://www.fiddlertool.com/fiddler/ - с ним все понятнее будет

Добавлено через 2 минуты
там 5 полей
login
passsword
submit
SQ
adm
их кто передавать будет?!
--------------------
Форум программистов уклонистов в сторону сео-шмео
PM MAIL WWW ICQ   Вверх
eViperEA
Дата 15.3.2008, 19:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 71
Регистрация: 13.3.2008

Репутация: нет
Всего: нет



Цитата(creas0ft @ 15.3.2008,  19:13)
надо всю форму показывать а не так.
Ставь fiddler http://www.fiddlertool.com/fiddler/ - с ним все понятнее будет

Добавлено @ 19:15
там 5 полей
login
passsword
submit
SQ
adm
их кто передавать будет?!

Извиняюсь... и Как мне с ними справиться? я знаю только логин и пароль... smile 
PM MAIL   Вверх
creas0ft
Дата 15.3.2008, 19:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 117
Регистрация: 5.8.2006
Где: Саранск

Репутация: 2
Всего: 2



так поставь снифер что я дал выше, и узнаешь что в тех полях надо передать ;)
--------------------
Форум программистов уклонистов в сторону сео-шмео
PM MAIL WWW ICQ   Вверх
eViperEA
Дата 16.3.2008, 08:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 71
Регистрация: 13.3.2008

Репутация: нет
Всего: нет



Скажу чесно( Пытался в нем разобраться ничего не вышло smile 
Как в нем работать? smile (и как он может помочь...)
 smile 
PM MAIL   Вверх
MetalFan
Дата 16.3.2008, 11:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 14
Всего: 128



Цитата(eViperEA @  16.3.2008,  08:08 Найти цитируемый пост)
 (и как он может помочь...)

показать, что посылает браузер при логине.

Цитата(eViperEA @  16.3.2008,  08:08 Найти цитируемый пост)
Как в нем работать? 

настраиваешь проксю на локальный адрес и порт 8888 и фидлер будет показывать что куда от кого пошло


--------------------
There are always someone smarter than you...
PM MAIL   Вверх
eViperEA
  Дата 16.3.2008, 17:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 71
Регистрация: 13.3.2008

Репутация: нет
Всего: нет



В общем вот что то я там нашел.. 
Когда залогинился он мне с левой сторороный написал 2е новых строчки ... 
HTTP forum.trktvs.ru /index.php?t=login 
там во вкладке TextView строчка login=xxx&password=xxx&SQ=0&adm=
в WebForms в разделе боде собсно тоже самое ... 
вторая строчка как я понял это он меня на страницу послал... 
HTTP forum.trktvs.ru /index.php?t=index&

попробовал написать код... 
Код

procedure TForm1.Button1Click(Sender: TObject);
var
S: TStringList;
begin
S:= TStringList.Create;
S.Add('login=eViper');
S.Add('password=wsadeds');
s.Add('SQ=0');
s.Add('adm=');
memo1.Text:=IdHTTP1.Post('http://forum.trktvs.ru/index.php?t=login&', S);
memo1.lines.savetofile('c:\test.html');
end;

end.

И он мне выдал ошибку.. smile  smile  smile 
HTTP/1.1 302 found Как мне с ней справиться?
Вот на всякий случай исходник...

Это сообщение отредактировал(а) eViperEA - 16.3.2008, 17:47

Присоединённый файл ( Кол-во скачиваний: 2 )
Присоединённый файл  V1.rar 3,46 Kb
PM MAIL   Вверх
creas0ft
Дата 16.3.2008, 17:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 117
Регистрация: 5.8.2006
Где: Саранск

Репутация: 2
Всего: 2



handleredirects = true в свойствах поставить http 
--------------------
Форум программистов уклонистов в сторону сео-шмео
PM MAIL WWW ICQ   Вверх
eViperEA
Дата 16.3.2008, 18:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 71
Регистрация: 13.3.2008

Репутация: нет
Всего: нет



Спасибо!!! заработало...  но только с форумом((( 
а вот на этом сайте чета не хочет...
Код

<center><b>Login</b></center>
<hr>
<center><form action=login.php method=post name=login onsubmit="return saveme();">
Username: <input type=text name=username><br>
Password: <input type=password name=password bgcolor=585858><br>
Remember me?<br />
<input type="radio" value="true" name="save">Yes <input type="radio" name="save" value="false" 
checked>No

<input type=submit value=Submit><br><a href=recpass.php>Forget Your Password?</a></form><font 
size=+1><center><a href='signup.php'><img src=h3_signup.gif alt='Sign Up Now!'></a></center>
</center></font></br><hr></br><hr>
<center><b>Updates</b></center>
<hr>

Сайт высылает username=eViperEA&password=xxx&save=false
я соответственно написал 
Код

S.Add('username=eViperEA');
S.Add('password=xxx');
s.Add('save=false');

Но он не заходит... в сохраненном файле memo1.lines.savetofile('c:\test.html'); показывает все без картинок и незалогининную страницу..
возможно это по тому что он заходит сначало на http://www.advercash.net/login.php (как на
временную страницу) а затем на http://www.advercash.net/adverts.php
Как с этим бороться ? smile 

Это сообщение отредактировал(а) eViperEA - 26.3.2008, 17:17
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.0567 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.