Чекер сайтов на текст

Тема в разделе "Как сделать...", создана пользователем extrimportal, 16 ноя 2009.

Статус темы:
Закрыта.
  1. extrimportal

    extrimportal

    Регистр.:
    28 ноя 2008
    Сообщения:
    548
    Симпатии:
    70
    нужен простой чекер сайтов. например загружаю я список страниц,
    и скрипт запускает каждую и если в ней есть текст "да покупаю" он записывает его в текстовик1 если нет в текстовик2. Помогите пожалуйста, очень нужно... :thenks::thenks::thenks::bc:
     
  2. tostrss

    tostrss

    Регистр.:
    16 окт 2007
    Сообщения:
    771
    Симпатии:
    217
    PHP:

    <?php

    $urls 
    = array('url.txt');

    $good fopen('good.txt''w');
    foreach (
    $urls as $url) {
        
    $url trim($url);
        
    $content = @file_get_contents($url);
        if (
    false !== strpos($content'да покупаю')) {
            
    fwrite($good$url."\r\n");
        }
    }
    fclose($good);
    ?>
     
  3. extrimportal

    extrimportal

    Регистр.:
    28 ноя 2008
    Сообщения:
    548
    Симпатии:
    70
    че то непашит
     
  4. Mr.Emm

    Mr.Emm Постоялец

    Регистр.:
    5 май 2008
    Сообщения:
    147
    Симпатии:
    110
    PHP:
    function to_write($way$data$e) {
        
    $hf fopen($way$e);
              
    flock($hfLOCK_EX);
              
    fputs($hf$data);
              
    flock($hfLOCK_UN);
              
    fclose($hf);
    }
    $urls file('urls.txt'); // каждый урл с новой строки
       
    $c count($urls);
        for(
    $i=0$i $c$i++ ) {
           
    $content = @file_get_contents(trim($urls[$i]));
             if (
    strpos($content'да покупаю') !== false) {
                  
    to_write('file-1.txt'$urls[$i], 'w+');
             } else {
                  
    to_write('file-2.txt'$urls[$i], 'w+');
             }
       }
     
    extrimportal нравится это.
  5. extrimportal

    extrimportal

    Регистр.:
    28 ноя 2008
    Сообщения:
    548
    Симпатии:
    70
    Трабл! записывает только по одному значению, то есть по одному урл в каждый текстовик. Подредактируйте плиз! Права расставил, урлов ставлю немного 10-20 штук...
    П.С. страница после работы выводит Content-Length: 0 хоть урлы сам подбирал с нужным текстом.
     
  6. Sanuch

    Sanuch

    Регистр.:
    25 май 2009
    Сообщения:
    207
    Симпатии:
    70
    при вызове функции to_write() измените последний параметр с 'w+' на 'a+', так как при каждом вызове файл открывается заново и урезается до нулевой длины.
     
  7. extrimportal

    extrimportal

    Регистр.:
    28 ноя 2008
    Сообщения:
    548
    Симпатии:
    70
    и последний глюк господа. после обработки 24 урл с одним специально подставленым урлом скрипт записал этот самый урл 5 раз, а в другом текстовике 75 урл + то что записываются урл не по порядке, можно это исправить?
     
  8. Sanuch

    Sanuch

    Регистр.:
    25 май 2009
    Сообщения:
    207
    Симпатии:
    70
    Скрипт читает урлы из файла в массив, после проходит по массиву, выбирает урл и получает контент по урлу. Контент проверяется на наличие требуемого текста, после чего урл заносится в один из файлов. Исходя из алгоритма работы скрипта проблемы связаны только с входным файлом urls.txt. Скрипт никаким образом не меняет порядок следования урлов.
     
Статус темы:
Закрыта.