Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
многопоточный носко4екер на php .. |

18.12.2008, 03:56
|
|
Постоянный
Регистрация: 28.09.2007
Сообщений: 820
Провел на форуме: 6722038
Репутация:
1385
|
|
многопоточный носко4екер на php ..
PHP код:
<?php
/*######################
многопоточный носко4екер
по мотивам скрипта де-визбла на питоне ..
[ - надеюсь он не в обиде за идейный плагиат - ]
(C) 159932
######################*/
set_time_limit(0);
error_reporting(0);
$cout = 10; # кол-во потоков, советую не ставить много, если чек происходит с локала, да и при маленьком канале тем более..
$time = 10; # таймаут, чем больше потоков, тем больше таймаут надо ставить ..
$filn = 'sock.txt'; # файл с носкаме
$good = 'good.txt'; # файл куда писать гут носки после чека
$deli = '0'; # 0 - ничего не делать с файлами;
# 1 - удалить файл с носками после чека;
# 2 - удалить старый good.txt
# 3 - удалить файл с носками, и старый good.txt
# кавычки для понту :D
############################################################################
$file[0] = array_unique(file($filn));
if (sizeof($file[0]) < $cout) $file = array_chunk($file[0], $cout);
if ($deli == 1) unlink($filn);
if ($deli == 2) unlink($good);
if ($deli == 3) { unlink($filn); unlink($good);}
$fin = fopen($good, 'a');
foreach ($file as $ips) {
$hren = array();
$mh = curl_multi_init();
foreach ($ips as $ip) {
$ip = trim($ip);
if (!preg_match('#\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}:\d{1,5}#',$ip)) continue;
$hren[$ip] = curl_init('http://cmyip.com/');
curl_setopt($hren[$ip], CURLOPT_RETURNTRANSFER, 1);
curl_setopt($hren[$ip], CURLOPT_TIMEOUT, $time);
curl_setopt($hren[$ip], CURLOPT_PROXY, $ip);
curl_setopt($hren[$ip], CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5);
curl_multi_add_handle ($mh,$hren[$ip]);
}
if (!sizeof($hren)) continue;
do {
$mrc = curl_multi_exec($mh, $active);
} while ($mrc == CURLM_CALL_MULTI_PERFORM);
while ($active and $mrc == CURLM_OK) {
if (curl_multi_select($mh) != -1) {
do {
$mrc = curl_multi_exec($mh, $active);
} while ($mrc == CURLM_CALL_MULTI_PERFORM);
}
}
foreach ($hren as $i => $ip) {
$res[$i]=curl_multi_getcontent($hren[$i]);
curl_multi_remove_handle($mh,$hren[$i]);
curl_close($hren[$i]);
}
curl_multi_close($mh);
foreach ($res as $ip=>$data) {
$ip = explode(':',$ip);
if (strpos($data, $ip[0]) !== false) fwrite($fin, $ip[0].':'.$ip[1]."\r\n");
}
}
fclose($fin);
?>
|
|
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|