PDA

Просмотр полной версии : Проблемы с чекером.


Adekvatnyj
29.11.2009, 15:54
Кидаю исходный код с мусорными функциями, работает только сheckya , после обьявления сразу ее вызов.
Проблема в том, что проверяет 1 прокси, а если в ней еще таймаут то вообще ничего не проверяет.
Как ограничить проверку каждой прокси, или добавить многопоточность?
Доведите пжл до ума функцию сheckya
<?
set_time_limit(200 * 10);
if (sometext==sometext) { //суть этой строки неважна...
echo '<center><h2><font color="gray">Чекер прокси от Adekvatnyj</font></h2></center>';
$filename = 'proxy.txt';//название файла с прокси
if (file_exists($filename)) {
echo "<h3>Прокси лист есть, начинаем проверку:</h3>"; //если файл существует
} else {
die; //если файла нету
}
}
function checkya() {
$path = 'http://mail.yandex.ru/';
$ref = $path;
$file = @file("proxy.txt");
for ($i = 0;$i<count($file);$i++) {
$list = $file[$i];
$proxy = trim($list);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $path);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.6) Gecko/2009011913 Firefox/3.0.6');
curl_setopt($ch, CURLOPT_REFERER,$ref);
curl_setopt($ch, CURLOPT_TIMEOUT,1);
curl_setopt($ch, CURLOPT_PROXY, $proxy);
curl_setopt($ch, CURLOPT_RETURNTRANSFER , 1 );
$result = curl_exec($ch);
}
if (preg_match('/<title>Яндекс.Почта<\/title>/',$result)) {
echo '<br>'.$proxy;} else {
echo 'Не нашло еще...';
}
curl_close($ch);
}
checkya();
$mode = $_POST['mode']; //получаем режим работы
if ($mode == 'vkontakte') //если режим работы чек на валид ВК прокси
{
checkvk();
} elseif ($mode == 'ya') //усли надо чекать под яндекс
{
checkya();
}
?>
А также человек знающий PHP5 СВЯЖИСЬ ПЛИЗ В АСЬКУ 495399!!!

Deathdreams
29.11.2009, 16:35
if (preg_match('/<title>Яндекс.Почта<\/title>/',$result)) {
:D

Юзай функцию:



function utf2win($fcontents) {
$out = $c1 = '';
$byte2 = false;
for ($c = 0;$c < strlen($fcontents);$c++) {
$i = ord($fcontents[$c]);
if ($i <= 127) {
$out .= $fcontents[$c];
}
if ($byte2) {
$new_c2 = ($c1 & 3) * 64 + ($i & 63);
$new_c1 = ($c1 >> 2) & 5;
$new_i = $new_c1 * 256 + $new_c2;
if ($new_i == 1025) {
$out_i = 168;
} else {
if ($new_i == 1105) {
$out_i = 184;
} else {
$out_i = $new_i - 848;
}
}
// UKRAINIAN fix
switch ($out_i){
case 262: $out_i=179;break;// і
case 182: $out_i=178;break;// І
case 260: $out_i=186;break;// є
case 180: $out_i=170;break;// Є
case 263: $out_i=191;break;// ї
case 183: $out_i=175;break;// Ї
case 321: $out_i=180;break;// ґ
case 320: $out_i=165;break;// Ґ
}
$out .= chr($out_i);

$byte2 = false;
}
if ( ( $i >> 5) == 6) {
$c1 = $i;
$byte2 = true;
}
}
return $out;
}

Morozil_nikЁ
29.11.2009, 16:37
Тоже проблема с чекером , есть ли рабочий чекер ВК бесплатный , что бы капчу мог сам вводить ?

b3
29.11.2009, 16:50
Это тяжело назвать чекером прокси. Во-первых непонятно зачем ты щимишся на http://mail.yandex.ru/ загружаеш большой обьем страницы. Во-вторых ты не определяеш анонимная прокся или нет, тип прокси. Очень грязный код. Поищи какой нибуть сервис типа 2ip.ru, я писал когда-то для себя чекер, чекал через свой скрипт залитый на хосте
http://b3.serveblog.net/ip.php - открой исходник увидиш {**.**.229.166}{anonym} первое ето IP второе ето прозрачность прокси.