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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.11.2012, 13:53   #1
bakanaev
Форумчанин
 
Регистрация: 27.03.2012
Сообщений: 438
По умолчанию Хитрый сайт 3. Proxy

Для тех кто не знает вкратце.
Есть онлайн голосовалка.
Код:
http://top.ultimasoft.ru/
.
Так вот. Написал программу, работает через sock4, socks5 и http proxy. И прикол в том что если она работает через http то голоса засчитываются раз через раз. А если работает через socks5\socks4 то засчитывается один голос и все, остальные нет, помогает лишь перезапуск программы.
Куки при каждом запросе разные, само собой ip тоже.

Вот так делаю конект для http
Код:
IdHTTP1.ReadTimeout:=StrToInt(Edit4.Text)*1000;
               IdHTTP1.ConnectTimeout:=StrToInt(Edit4.Text)*1000;
               IdHTTP1.ProxyParams.ProxyServer:=Trim ( Copy( http_proxy.Strings [j],1,Pos(':',http_proxy.Strings [j])-1) );
               IdHTTP1.ProxyParams.ProxyPort:= StrToInt  ( Trim( Copy(http_proxy.Strings [j],Pos(':',http_proxy.Strings [j])+1,Length(http_proxy.Strings [j]))));


         try
       
                idHTTP1.Request.CustomHeaders.Clear;
                idHTTP1.Request.Host:='top.ultimasoft.ru';
                idHTTP1.Request.Connection:='keep-alive';
                idHTTP1.Request.Accept:='text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8';
                idHTTP1.Request.Referer:='http://top.ultimasoft.ru/shard/view'+Edit2.Text+'.html';
                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.CustomHeaders.Add('Cookie: __utma=80892690.'+IntToStr(RandomRange(1688011111, 2688099999))+'.'+IntToStr(g_time())+'.'+IntToStr(g_time())+'.'+IntToStr(g_time())+'.1; __utmb=80892690.1.10.'+IntToStr(g_time())+'; __utmc=80892690; __utmz=80892690.'+IntToStr(g_time())+'.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)');
                IdHTTP1.Get('http://top.ultimasoft.ru/shard/vote'+Edit2.Text+'-'+Edit5.Text+'.html');

           except
bakanaev вне форума Ответить с цитированием
Старый 08.11.2012, 13:53   #2
bakanaev
Форумчанин
 
Регистрация: 27.03.2012
Сообщений: 438
По умолчанию

Так для socks4
Код:
            IdSocksInfo1.Version:=svSocks4;
            IdSocksInfo1.Host:= Trim ( Copy( socks4_proxy.Strings [j],1,Pos(':',socks4_proxy.Strings [j])-1) );
            IdSocksInfo1.Port:= StrToInt  ( Trim( Copy(socks4_proxy.Strings [j],Pos(':',socks4_proxy.Strings [j])+1,Length(socks4_proxy.Strings [j]))));
            IdSocksInfo1.Authentication:= saNoAuthentication;
            IdSSLIOHandlerSocketOpenSSL1.TransparentProxy:=IdSocksInfo1;
            IdHTTP1.IOHandler:=IdSSLIOHandlerSocketOpenSSL1;

            IdHTTP1.ReadTimeout:=StrToInt(Edit4.Text)*1000;
            IdHTTP1.ConnectTimeout:=StrToInt(Edit4.Text)*1000;
               try
                
                idHTTP1.Request.CustomHeaders.Clear;
                idHTTP1.Request.Host:='top.ultimasoft.ru';
                idHTTP1.Request.Connection:='keep-alive';
                idHTTP1.Request.Accept:='text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8';
                idHTTP1.Request.Referer:='http://top.ultimasoft.ru/shard/view'+Edit2.Text+'.html';
                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.CustomHeaders.Add('Cookie: __utma=80892690.'+IntToStr(RandomRange(2688011111, 2688099999))+'.'+IntToStr(g_time())+'.'+IntToStr(g_time())+'.'+IntToStr(g_time())+'.1; __utmb=80892690.1.10.'+IntToStr(g_time())+'; __utmc=80892690; __utmz=80892690.'+IntToStr(g_time())+'.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)');
                IdHTTP1.Get('http://top.ultimasoft.ru/shard/vote'+Edit2.Text+'-'+Edit5.Text+'.html');

               except
bakanaev вне форума Ответить с цитированием
Старый 08.11.2012, 13:53   #3
bakanaev
Форумчанин
 
Регистрация: 27.03.2012
Сообщений: 438
По умолчанию

ну и для socks5
Код:
  IdSocksInfo1.Version:=svSocks5;
            IdSocksInfo1.Host:= Trim ( Copy( socks5_proxy.Strings [j],1,Pos(':',socks5_proxy.Strings [j])-1) );
            IdSocksInfo1.Port:= StrToInt  ( Trim( Copy(socks5_proxy.Strings [j],Pos(':',socks5_proxy.Strings [j])+1,Length(socks5_proxy.Strings [j]))));
            IdSocksInfo1.Authentication:= saNoAuthentication;
            IdSSLIOHandlerSocketOpenSSL1.TransparentProxy:=IdSocksInfo1;
            IdHTTP1.IOHandler:=IdSSLIOHandlerSocketOpenSSL1;

            IdHTTP1.ReadTimeout:=StrToInt(Edit4.Text)*1000;
            IdHTTP1.ConnectTimeout:=StrToInt(Edit4.Text)*1000;
               try
           
                idHTTP1.Request.CustomHeaders.Clear;
                idHTTP1.Request.Host:='top.ultimasoft.ru';
                idHTTP1.Request.Connection:='keep-alive';
                idHTTP1.Request.Accept:='text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8';
                idHTTP1.Request.Referer:='http://top.ultimasoft.ru/shard/view'+Edit2.Text+'.html';
                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.CustomHeaders.Add('Cookie: __utma=80892690.'+IntToStr(RandomRange(1688011111, 2688099999))+'.'+IntToStr(g_time())+'.'+IntToStr(g_time())+'.'+IntToStr(g_time())+'.1; __utmb=80892690.1.10.'+IntToStr(g_time())+'; __utmc=80892690; __utmz=80892690.'+IntToStr(g_time())+'.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)');
              
                IdHTTP1.Get('http://top.ultimasoft.ru/shard/vote'+Edit2.Text+'-'+Edit5.Text+'.html');

               except
Может там что-то чистить надо после каждого кнекта?
bakanaev вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Хитрый сайт 2. Cookies bakanaev Общие вопросы Delphi 48 07.11.2012 15:03
Хитрый сайт. IdHttp.GET(URL) не берет. bakanaev Общие вопросы Delphi 7 06.11.2012 20:27
Хитрый файлик - расшифруйте. Питер PHP 1 20.05.2012 14:33
Хитрый троян _-Re@l-_ Безопасность, Шифрование 6 27.11.2011 06:35
Хитрый proxy сервер wowsel Работа с сетью в Delphi 2 22.08.2011 16:17