Здравствуйте уважаемые прогеры. Нужен скрипт парсер. ТЗ: 1. Обращаемся к URL вида www.test.ru/test/test.php=XXX Где XXX это число, переменная от 1 до 999 допустим. Необходимо что бы значения максимума и минимума я мог вводить из WEB-интерфейса. 2. Дальше смотрим как отвечает удалённый скрипт. Если выводится информация отличная от "STOP", то XXX записываем в файл и продолжаем цикл. На выходе должен быть txt файл, содержащий XXX, каждый с новой строчки (либо через ; ) Код должен быть максимально оптимизирован, проверять придётся много, порядка 10 миллионов. Бюджет: 20$ Срок: работающий скрипт нужен до 18.00 27.11.2010 (суббота). Если заинтересовало: велком 456-075-554
PHP: <form method="post" action=""> Min: <input name="min" /><br /> Max: <input name="max /><br /> <input type="submit" /> </form><br /> <?php if( !empty( $_POST)) { $min = (int)$_POST['min']; $max = (int)$_POST['max']; if( $max >= $min) { $url = 'http://www.test.ru/test/test.php='; $file = 'myFile.txt'; set_time_limit( ($max - $min) * 5); if( !is_file( $file)) { @touch( $file); @chmod( $file, 0777); } if( is_writable( $file)) { for( $i = $min; $i <= $max; $i++;) { $result = file_get_contents( $url .$i); if( $result != 'STOP') file_put_contents( $myFile, $i .PHP_EOL, FILE_APPEND); } echo 'Parsing complete'; } else echo 'Cannot write to file: "' .$file .'"'; } else echo 'Max must be greater or equal to Min'; } ?>
Апельсин Не кяпитись, настолько простой скрипт вряд ли то, что им нужно. Скорее всего это вырастет раз так в 20-30 и обрастёт функционалом. Заработаешь на расширении
Спасибо всем отписавшимся. neverlose, Ваш вариант не работает. Ошибка: Parse error: syntax error, unexpected T_IF in /home/xxxx/1.php on line 7 Исполнитель найден, всем спасибо.
Пару синтаксических ошибок ) я же скрипт не проверял. Скрипт простой, и не стоит 0.5$ за строчку. Пусть идёт на благотворительность ) PHP: <form method="post" action=""> Min: <input name="min" /><br /> Max: <input name="max" /><br /> <input type="submit" /> </form><br /> <?php if( !empty( $_POST)) { $min = (int)$_POST['min']; $max = (int)$_POST['max']; if( $max >= $min) { $url = 'http://www.test.ru/test/test.php='; $file = 'myFile.txt'; set_time_limit( ($max - $min) * 5); if( !is_file( $file)) { @touch( $file); @chmod( $file, 0777); } if( is_writable( $file)) { for( $i = $min; $i <= $max; $i++) { $result = file_get_contents( $url .$i); if( $result != 'STOP') file_put_contents( $myFile, $i .PHP_EOL, FILE_APPEND); } echo 'Parsing complete'; } else echo 'Cannot write to file: "' .$file .'"'; } else echo 'Max must be greater or equal to Min'; } ?>
действительно, вы что-то совсем "зажрались" =) neverlose добавил бы ещё flush set_time_limit в ноль бы поставил по идее, оно не критично, тк у file_get_contents есть лимиты ну и connection_aborted