Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   Smart proxymaker xD (https://forum.antichat.xyz/showthread.php?t=104846)

awdrg 05.02.2009 20:39

Smart proxymaker xD
 
Занимался брутом, программу для получения свежих прокси не нашел. Извращался вручную, вырезая с сайтов списки и приводил к виду xxx.xxx.xxx.xxx:yyyy вручную. Решил упростить задачу и написал небольшую программу на С++ под консоль, которая выдирает из введенного текста все прокси и аккуратненько выводит в списочек, по 1 штуке в ряд. Код кривоват, ну короче смотрите сами =) Если массам понравится моя задумка, добавлю больше возможностей. Тестировалась преимущественно на http://www.samair.ru/proxy/
P.S тестил под linux консолью bash.
P.P.S Запускаете программу, ctrl+v список в нее и потом три раза Enter
P.P.P.S Пишите в комментах абсолютно все что думаете по этому поводу

PHP код:

#include <iostream>
using namespace std;
bool num(char arr[], int frst);
bool ip(char arr[], int first);
bool next(char arr[], int first);
char first_clean(char in[], char out[]); 

main()
{
   
char ch='s';
   
int Break=0;
   
char *in = new char[30000];
   
char *out = new char[2000];
   
int arr 0;
   for (
arr=0ch!='\0',Break<3arr++,Break--)
   {
      if (Break<-
2)
         Break = 
0;
      if (
ch=='\n')
         Break=Break+
3;
      
cin.get(ch);
      
in[arr] = ch;
   }  
   
in[arr+1] = '\0';
   
cout <<  "--------------------" << endl;
   
first_clean(in,out);
   
cout << endl;
   for (
int k=;out[k]!='\0' ;k++)
      
cout<< out[k];
   return 
0;


bool num(char arr[], int num)
{
  
int f;
  
arr[num];
  if (( 
f>=48 ) and (<=59 ))
     return 
true;
  else return 
false;
}

bool ip(char arr[], int first)
{
   if ((
num(arr,first+1) == false) or (num(arr,first-1) == false))
         return 
false;
   for (
int x 4x<=11;x++)
   {
      if (
arr[first+x]=='\n')
         return 
false;
      if (
arr[first+x]=='.')
         return 
true;
   } 
   return 
false;
}     

bool next(char arr[], int first)
{
   if ((
num(arr,first)) or (arr[first] == '.'))
      return 
true;
   else return 
false;


char first_clean(char in[], char out[])
{
   
int x=0,m=0;
   for (
int z 0in[z]!='\0';z++)    
   {
      if ((
ip(in,z) == true) and ((num(in,z+1)==true) and (num(in,z-1)==true)))
      {
         if (
num(in,z-3) == true)
         {
            for (
int y z-3next(in,y); y++,z++,m++)   
            { 
               
cout << in[y];
               if (
next(in,y) == true)
                  
out[m] = in[y];
            }
            
cout << endl;
            
out[++m] = '\n';m++;
         }
         if (
num(in,z-2)==true)
         {
            for (
int y z-2next(in,y);y++,z++,m++)
            {
               
cout << in[y];
               if (
next(in,y) == true)
                  
out[m] = in[y];
            } 
            
cout << endl;
            
out[++m] = '\n';m++;
         }
         if (
num(in,z-1)==true)
         {
            for (
int y z-1next(in,y);y++,z++,m++)
            {
               
cout << in[y];
               if (
next(in,y) == true)
                  
out[m] = in[y];
            }
            
cout << endl;
            
out[++m] = '\n';m++;                  
         }  
      }
   
out[++m] = '\0';
   }                               
   return 
out[0];   



LEE_ROY 05.02.2009 20:44

Forum Proxy Leecher соберет и прочекает, а парсинг прокси из текста пишетсо на пхп регуляркой в пару строк. Готовых решений море.

CrazyStudentS_Mi}{ 05.02.2009 22:29

hrefer в руки и собирай прокси

vikseriq 06.02.2009 00:12

Поддерживаю про регулярки. Таже если там сильно мутная база, можно брать образцы (т.е. скорее всего порт будет 8080, а не 6666, и т.д.)
Добавить бы - автопереводка domain.net в ip - некоторые прокси-листы такие )
* Код первого поста не тестил. Юзаю фильтр и чекер на freeproxy.ru )

awdrg 06.02.2009 00:18

а где можно найти скрипт для hrefer'a (engine.php)? Тот что по умолчанию, не работает. Гугл не спас

CePry4oB 06.02.2009 00:23

2 пост абсолютно прав..

awdrg 06.02.2009 00:33

все, с hrefer'om разоюрался сам


Время: 00:43