Удаление дублей в итоговом файле

Тема в разделе "Решение различных задач по парсингу", создана пользователем JohnyLee, 15 фев 2018.

  1. JohnyLee

    JohnyLee Member Пользователи

    Регистрация:
    10 фев 2018
    Сообщения:
    42
    Город:
    Murmans
    Добрый день!

    Есть проект в котором парсится сайт, а результат записывается в файл (txt) на диске. В следующем проекте парсится уже другой сайт, и результат дозаписывается в тот же файле через макрос
    Ссылки недоступны для гостей.

    Можно ли средствами Content Downloader сделать, чтобы в итоговом файле не было дублей? На каком этапе это нужно делать?

    Спасибо!
     
  2. JohnyLee

    JohnyLee Member Пользователи

    Регистрация:
    10 фев 2018
    Сообщения:
    42
    Город:
    Murmans
    Кручусь вокруг такой конструкции, но опыта пока что явно не хватает.
    Код:
    [SAVETOFILE:c:\content\без_дублей.txt][DELDUP({br})][FILE(c:\content\с_дублями.txt|1|1000000)][/DELDUP][/SAVETOFILE]
    По моей логике, я сначала загружаю файл с дублями через макрос FILE, потом удаляю дубли через DELDUP, а потом сохраняю в новый файл через макрос SAVETOFILE :)

    Вообщем, пойду дальше Систему помощи читать...
     
    Root нравится это.
  3. xLime

    xLime Well-Known Member Супер Модератор Модератор

    Регистрация:
    4 сен 2017
    Сообщения:
    401
    Добрый день.
    PHP:
    <?php
    #Открываем файл
    $data_string file_get_contents('D:\data.txt');

    #Создаем новый
    $data fopen('D:\data_unique.txt''w+');

    #explode - преобразуем строку в массив
    #array_unique - удаляем повторяющиеся значения в массиве
    $data_unique_array array_unique(explode(","$data_string));

    #array_diff - сравниваем массив с пустым массивом для удаления пустых значений
    $data_unique_array array_diff($data_unique_array, array(''));

    foreach (
    $data_unique_array as $key => $value) {
        
    fwrite($data$value."\r\n");
    }
    ?>
    [​IMG]

    С вас 100 рублей.
     
    JohnyLee и Root нравится это.
  4. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Здравствуйте.

    2018-02-16_03-28-29.png
     
    JohnyLee и xLime нравится это.
  5. JohnyLee

    JohnyLee Member Пользователи

    Регистрация:
    10 фев 2018
    Сообщения:
    42
    Город:
    Murmans
    Надо же. Всё получилось! А я макрос DELDUP увидел, и подумал, что на нем функционал по работе с дублями закончился.

    Не вопрос. Ваш вариант тоже будет интересно попробовать. Только кошелька не видно.
     
    Root и xLime нравится это.

Поделиться этой страницей