Accueil > > > PROXYLISTER
PROXYLISTER
Information sur la source
Description
Liste et test les proxys proposés par www.samair.ru (20 pages) A faire (si j'ai le temps ou bien de l'aide) : - dans le script, ereg() verifie une adresse IP de type 127.0.0.1:80 (ip:port), j'ai un peu de mal avec cette fonction donc si qq pourrait me dire comment verifier une adresse IP de type host:port (ex: isdn02201.cultura.com.br:80) - puis ce sera tout, enfin je pense :)
Source
- <?php
- ////////////////////////////////////
- //
- // ProxyLister v 1.1
- // Codé par Minimix <minimix92 arobase free.fr>
- //
- // Liste et test les proxys proposés par www.samair.ru (20 pages)
- //
- ////////////////////////////////////
-
-
- $log = "log.txt"; // Fichier dans lequel on log les proxys
- $samair = "http://samair.ru/proxy"; // Url des listes de www.samair.ru
-
- ////////////////////////////////////
- // Fonctions
- ////////////////////////////////////
- function log_result($file,$string){
- if($fp = @fopen($file,'a')){
- $encode = array('.','0','1','2','3','4','5','6','7','8','9',':');
- $decode = array('.','0','1','2','3','4','5','6','7','8','9',':');
- $string = str_replace($encode,$decode,$string); // Remplace les entités HTML par leurs valeurs
- @fwrite($fp,$string);
- @fclose($fp);}}
-
- function get_rules($file){
- $rule = array();
- $array = array();
- $rule = file($file);
- for($i = 0; $i < count($rule); $i++){
- $array[$i] = $rule[$i];}
- return($array);}
- ////////////////////////////////////
- // Headers
- ////////////////////////////////////
- ob_start("ob_gzhandler");
- header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
- header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
- header('Cache-Control: no-store, no-cache, must-revalidate');
- header('Cache-Control: post-check=0, pre-check=0', FALSE);
- header('Pragma: no-cache');
- ////////////////////////////////////
- // En-tête
- ////////////////////////////////////
- echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">';
- echo '<html>';
- echo '<head>';
- echo '<title>ProxyLister</title>';
- echo '<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />';
- echo '<link rel="Shortcut Icon" href="http//'.$_SERVER['HTTP_HOST'].'/favicon.ico" />';
- echo '<style type="text/css">';
- echo 'body{ font-family:Garamond; font-size:15px;}';
- echo 'table{ font-size:14px; border:1 solid #B7C6D9; border-collapse:collapse;}';
- echo 'input, select{ background-color:#222222; color:#808080; font-weight:bold; font-size:12px; border:1 solid #B7C6D9;}';
- echo '</style>';
- echo '</head>';
- echo '<body bgcolor="#000000" text="#808080" link="#808080" vlink="#B2CAD4">';
- echo '<center>';
- echo '<table border="1" bgcolor="#222222" cellspacing="0" cellpadding="4">';
- echo '<tr><td align="center"><b><font size="5">ProxyLister</font></b></td></tr>';
- echo '</table><br />';
- echo '<form action="'.$_SERVER['PHP_SELF'].'" method="POST">';
- echo '<select name="url" size="1">';
- echo '<option value="'.$samair.'/index.htm">'.$samair.'/index.htm</option>';
- for($i=2; $i<10; $i++)
- echo '<option value="'.$samair.'/proxy-0'.$i.'.htm">'.$samair.'/proxy-0'.$i.'.htm</option>';
- for($i=10; $i<21; $i++)
- echo '<option value="'.$samair.'/proxy-'.$i.'.htm">'.$samair.'/proxy-'.$i.'..htm</option>';
- echo '</select> ';
- echo '<input type="submit" value="List" />';
- echo '</form>';
- ////////////////////////////////////
- // Test les proxys du fichier log
- ////////////////////////////////////
- if(isset($_POST['check'])){
- $proxy = array();
- $ips = get_rules($log);
- $i = 0;
- $p = 0;
- foreach($ips as $ip){
- $ip = explode('|',$ip);
- if($fp = @fsockopen(trim($ip[0]),trim($ip[1]),$errno,$errstr,1)){
- $proxy[$i] = $ip[0].'|'.$ip[1].'|'.$ip[2].'|'.$ip[3];
- @fclose($fp);}
- $p++;}
- if(count($proxy)!=0){
- echo '<br/>';
- echo '<table border="1" cellspacing="0" cellpadding="4" width="55%">';
- echo '<tr bgcolor="#222222" align="center">';
- echo '<td width="20%"><b>IP</b></td>';
- echo '<td width="10%"><b>Port</b></td>';
- echo '<td width="23%"><b>Niveau</b></td>';
- echo '<td width="42%"><b>Pays</b></td></tr>';
- for($i=0; $i<count($proxy); $i++){
- $proxy[$i] = explode('|',$proxy[$i]);
- echo '<tr bgcolor="#1E2226">';
- echo '<td> '.$proxy[$i][0].'</td>'; // Ip
- echo '<td align="center">'.$proxy[$i][1].'</td>'; // Port
- echo '<td align="center">'.$proxy[$i][2].'</td>'; // Niveau
- echo '<td> '.$proxy[$i][3].'</td></tr>'; // Pays
- echo '</tr>';}
- echo '<tr bgcolor="#222222" align="center">';
- echo '<td colspan="4"><b>'.$i.' proxy(s) sur '.$p.'</b></td>';
- echo '</tr>';
- echo '</table>';}
- else{
- echo '<p><b>Sur '.$p.' proxys, aucun n\'a répondu !</b></p>';}}
- ////////////////////////////////////
- // Liste les proxys
- ////////////////////////////////////
- else{
- if(isset($_POST['url']))
- $url = $_POST['url'];
- else
- $url = $samair.'/index.htm';
- if($fp = @fopen($url,'r')){
- $page = '';
- while(!feof($fp))
- $page .= @fread($fp,8192);
- @fclose($fp);
- log_result('tmp',$page);
- $lines = get_rules('tmp');
- $proxy = array();
- $i = 0;
- @unlink($log);
- @unlink('tmp');
- foreach($lines as $line){
- if(ereg('([0-9]{1,3}).([0-9]{1,3}).([0-9]{1,3}).([0-9]{1,3}):([0-9]{2,4})',$line,$oct)){
- $iport = $oct[1].'.'.$oct[2].'.'.$oct[3].'.'.$oct[4].':'.$oct[5]; // Ip:Port
- $ip = $oct[1].'.'.$oct[2].'.'.$oct[3].'.'.$oct[4]; // Ip
- $port = $oct[5]; // Port
- $infos = explode(' ',$line); // Niveau & Pays du proxy
- $proxy[$i] = $ip.'|'.$port.'|'.$infos[1].'|'.$infos[2];
- log_result($log,$proxy[$i]);
- $i++;}}
- if(count($proxy)!=0){
- echo '<form action="'.$_SERVER['PHP_SELF'].'" method="POST">';
- echo '<input type="submit" name="check" value=" Check Proxys " />';
- echo '</form>';
- echo '<table border="1" cellspacing="0" cellpadding="4" width="55%">';
- echo '<tr bgcolor="#222222" align="center">';
- echo '<td width="20%"><b>IP</b></td>';
- echo '<td width="10%"><b>Port</b></td>';
- echo '<td width="23%"><b>Niveau</b></td>';
- echo '<td width="42%"><b>Pays</b></td></tr>';
- for($i=0; $i<count($proxy); $i++){
- $proxy[$i] = explode('|',$proxy[$i]);
- echo '<tr bgcolor="#1E2226">';
- echo '<td> '.$proxy[$i][0].'</td>'; // Ip
- echo '<td align="center">'.$proxy[$i][1].'</td>'; // Port
- echo '<td align="center">'.$proxy[$i][2].'</td>'; // Niveau
- echo '<td> '.$proxy[$i][3].'</td></tr>'; // Pays
- echo '</tr>';}
- echo '<tr bgcolor="#222222" align="center">';
- echo '<td colspan="4"><b>'.$i.' proxys</b></td>';
- echo '</tr>';
- echo '</table>';}
- else{
- echo '<p><b>La page <a href="'.$url.'">'.$url.'</a> contient aucun proxy !</b></p>';}}
- else{
- echo '<p><b>Le listage de la page <a href="'.$url.'">'.$url.'</a> à échoué !</b></p>';}}
- ////////////////////////////////////
- // Bas de page
- ////////////////////////////////////
- echo '<br />';
- echo '<table border="1" bgcolor="#222222" cellspacing="0" cellpadding="4">';
- echo '<tr align="center">';
- echo '<td><b><font color="green">Coded</font> ';
- echo '<font color="yellow">by</font> ';
- echo '<font color="red">Minimix</font></b></td></tr>';
- echo '</table>';
- echo '</center>';
- echo '</body>';
- echo '</html>';
- @ob_end_flush();
- exit;
- ?>
<?php
////////////////////////////////////
//
// ProxyLister v 1.1
// Codé par Minimix <minimix92 arobase free.fr>
//
// Liste et test les proxys proposés par www.samair.ru (20 pages)
//
////////////////////////////////////
$log = "log.txt"; // Fichier dans lequel on log les proxys
$samair = "http://samair.ru/proxy"; // Url des listes de www.samair.ru
////////////////////////////////////
// Fonctions
////////////////////////////////////
function log_result($file,$string){
if($fp = @fopen($file,'a')){
$encode = array('.','0','1','2','3','4','5','6','7','8','9',':');
$decode = array('.','0','1','2','3','4','5','6','7','8','9',':');
$string = str_replace($encode,$decode,$string); // Remplace les entités HTML par leurs valeurs
@fwrite($fp,$string);
@fclose($fp);}}
function get_rules($file){
$rule = array();
$array = array();
$rule = file($file);
for($i = 0; $i < count($rule); $i++){
$array[$i] = $rule[$i];}
return($array);}
////////////////////////////////////
// Headers
////////////////////////////////////
ob_start("ob_gzhandler");
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Cache-Control: post-check=0, pre-check=0', FALSE);
header('Pragma: no-cache');
////////////////////////////////////
// En-tête
////////////////////////////////////
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">';
echo '<html>';
echo '<head>';
echo '<title>ProxyLister</title>';
echo '<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />';
echo '<link rel="Shortcut Icon" href="http//'.$_SERVER['HTTP_HOST'].'/favicon.ico" />';
echo '<style type="text/css">';
echo 'body{ font-family:Garamond; font-size:15px;}';
echo 'table{ font-size:14px; border:1 solid #B7C6D9; border-collapse:collapse;}';
echo 'input, select{ background-color:#222222; color:#808080; font-weight:bold; font-size:12px; border:1 solid #B7C6D9;}';
echo '</style>';
echo '</head>';
echo '<body bgcolor="#000000" text="#808080" link="#808080" vlink="#B2CAD4">';
echo '<center>';
echo '<table border="1" bgcolor="#222222" cellspacing="0" cellpadding="4">';
echo '<tr><td align="center"><b><font size="5">ProxyLister</font></b></td></tr>';
echo '</table><br />';
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="POST">';
echo '<select name="url" size="1">';
echo '<option value="'.$samair.'/index.htm">'.$samair.'/index.htm</option>';
for($i=2; $i<10; $i++)
echo '<option value="'.$samair.'/proxy-0'.$i.'.htm">'.$samair.'/proxy-0'.$i.'.htm</option>';
for($i=10; $i<21; $i++)
echo '<option value="'.$samair.'/proxy-'.$i.'.htm">'.$samair.'/proxy-'.$i.'..htm</option>';
echo '</select> ';
echo '<input type="submit" value="List" />';
echo '</form>';
////////////////////////////////////
// Test les proxys du fichier log
////////////////////////////////////
if(isset($_POST['check'])){
$proxy = array();
$ips = get_rules($log);
$i = 0;
$p = 0;
foreach($ips as $ip){
$ip = explode('|',$ip);
if($fp = @fsockopen(trim($ip[0]),trim($ip[1]),$errno,$errstr,1)){
$proxy[$i] = $ip[0].'|'.$ip[1].'|'.$ip[2].'|'.$ip[3];
@fclose($fp);}
$p++;}
if(count($proxy)!=0){
echo '<br/>';
echo '<table border="1" cellspacing="0" cellpadding="4" width="55%">';
echo '<tr bgcolor="#222222" align="center">';
echo '<td width="20%"><b>IP</b></td>';
echo '<td width="10%"><b>Port</b></td>';
echo '<td width="23%"><b>Niveau</b></td>';
echo '<td width="42%"><b>Pays</b></td></tr>';
for($i=0; $i<count($proxy); $i++){
$proxy[$i] = explode('|',$proxy[$i]);
echo '<tr bgcolor="#1E2226">';
echo '<td> '.$proxy[$i][0].'</td>'; // Ip
echo '<td align="center">'.$proxy[$i][1].'</td>'; // Port
echo '<td align="center">'.$proxy[$i][2].'</td>'; // Niveau
echo '<td> '.$proxy[$i][3].'</td></tr>'; // Pays
echo '</tr>';}
echo '<tr bgcolor="#222222" align="center">';
echo '<td colspan="4"><b>'.$i.' proxy(s) sur '.$p.'</b></td>';
echo '</tr>';
echo '</table>';}
else{
echo '<p><b>Sur '.$p.' proxys, aucun n\'a répondu !</b></p>';}}
////////////////////////////////////
// Liste les proxys
////////////////////////////////////
else{
if(isset($_POST['url']))
$url = $_POST['url'];
else
$url = $samair.'/index.htm';
if($fp = @fopen($url,'r')){
$page = '';
while(!feof($fp))
$page .= @fread($fp,8192);
@fclose($fp);
log_result('tmp',$page);
$lines = get_rules('tmp');
$proxy = array();
$i = 0;
@unlink($log);
@unlink('tmp');
foreach($lines as $line){
if(ereg('([0-9]{1,3}).([0-9]{1,3}).([0-9]{1,3}).([0-9]{1,3}):([0-9]{2,4})',$line,$oct)){
$iport = $oct[1].'.'.$oct[2].'.'.$oct[3].'.'.$oct[4].':'.$oct[5]; // Ip:Port
$ip = $oct[1].'.'.$oct[2].'.'.$oct[3].'.'.$oct[4]; // Ip
$port = $oct[5]; // Port
$infos = explode(' ',$line); // Niveau & Pays du proxy
$proxy[$i] = $ip.'|'.$port.'|'.$infos[1].'|'.$infos[2];
log_result($log,$proxy[$i]);
$i++;}}
if(count($proxy)!=0){
echo '<form action="'.$_SERVER['PHP_SELF'].'" method="POST">';
echo '<input type="submit" name="check" value=" Check Proxys " />';
echo '</form>';
echo '<table border="1" cellspacing="0" cellpadding="4" width="55%">';
echo '<tr bgcolor="#222222" align="center">';
echo '<td width="20%"><b>IP</b></td>';
echo '<td width="10%"><b>Port</b></td>';
echo '<td width="23%"><b>Niveau</b></td>';
echo '<td width="42%"><b>Pays</b></td></tr>';
for($i=0; $i<count($proxy); $i++){
$proxy[$i] = explode('|',$proxy[$i]);
echo '<tr bgcolor="#1E2226">';
echo '<td> '.$proxy[$i][0].'</td>'; // Ip
echo '<td align="center">'.$proxy[$i][1].'</td>'; // Port
echo '<td align="center">'.$proxy[$i][2].'</td>'; // Niveau
echo '<td> '.$proxy[$i][3].'</td></tr>'; // Pays
echo '</tr>';}
echo '<tr bgcolor="#222222" align="center">';
echo '<td colspan="4"><b>'.$i.' proxys</b></td>';
echo '</tr>';
echo '</table>';}
else{
echo '<p><b>La page <a href="'.$url.'">'.$url.'</a> contient aucun proxy !</b></p>';}}
else{
echo '<p><b>Le listage de la page <a href="'.$url.'">'.$url.'</a> à échoué !</b></p>';}}
////////////////////////////////////
// Bas de page
////////////////////////////////////
echo '<br />';
echo '<table border="1" bgcolor="#222222" cellspacing="0" cellpadding="4">';
echo '<tr align="center">';
echo '<td><b><font color="green">Coded</font> ';
echo '<font color="yellow">by</font> ';
echo '<font color="red">Minimix</font></b></td></tr>';
echo '</table>';
echo '</center>';
echo '</body>';
echo '</html>';
@ob_end_flush();
exit;
?>
Historique
- 13 août 2006 06:02:24 :
- - Test dorénavant les proxys trouvés
- 14 août 2006 05:46:50 :
- .
- 14 octobre 2006 07:17:30 :
- changement d'adresse des proxys + 1 erreur de reglé
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Comment tester les fichiers PHP [ par Clem ]
Comment tester les fichiers PHP sans les publier sur son site ? Dans le genre de PWS avec l'asp
fopen & proxy [ par thierry ]
Bonjour à tous et à toutes !Je tente d'utiliser la fonction fopen en ouvrant une page web par exemple. Seulement voila mon pb. Chez moi ca marche très
Apache comme proxy ? [ par Clem ]
J'ai vu que il est possible d'utiliser Apache comme serveur proxy, mais je n'y arrive pas. Pouvez-vous m'aider ?
Tester présece d'un fichier ! [ par o00zeus00o ]
Salut, jsuis assez débutant; j'aimerais tester si un fichier existe, comment faire ???Merci@+
Tester la présence d'une table MySQL ? [ par Skyride ]
BonsoirEst ce quelqu'un pourrait me renseigner s'il est possible de tester la présence d'une table dans une base de données MySQL ?-------------------
Tester lien [ par wbr ]
Bonjour, j'ai besoin d'un script pour tester si un lien http est valide ou pas. Ex. Je tape http://phpcs.com dans une champ de texte et ilme retourne
lister un dossier [ par g0belin ]
Bonjour,je voudrai savoir commentz peut on liste les fichiers d'un dossier !!!merci d'avance pour votre reponse
Lister les fichiers, sur plusieurs pages [ par jeremytheboss ]
Bonjour,Connaissez-vous le code à mettre pour lister le contenu d'un dossier sur plusieurs pages (dixfichiers par pages)Merci de votre réponse, Jérémy
tester la date pour update sur BD MySql [ par morganou ]
bonjour,je souhaite faire un update sur une table (mysql) de maniere systematique a minuit, quel est la maniere de procéder?le code doit etre en php.
tester un formulaire [ par nikos283 ]
salut je cherche a tester tous les champs d'un formulaire pour savoir si ils on tous été renseigné, le truc c que j'aimerai les tester sans forcement
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|