Запись в файл по ID из другого файла

Тема в разделе "Встроенный редактор CSV файлов", создана пользователем Max Human, 28 фев 2015.

  1. Max Human

    Max Human New Member Пользователи

    Регистрация:
    20 июн 2014
    Сообщения:
    18
    Есть два файла:
    - file_1.csv - база в виде ID;ссылка;
    - file_2.csv - результаты парсинга в виде ID;цена;

    Задача:

    Из файла file_1.csv взять ID и запомнить в переменную, далее перейти по ссылке (которая соответствует ID) и спарсить цену, далее положить цену в file_2.csv вместе с ID который записали в переменную.

    Можно как то совместить ID и ссылку в фале ссылок, который можно подтягивать из файлика, вместо ручного добавления?

    Заранее, благодарю.
     
  2. Root

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

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

    Парсить нужные данные с сайта в CSV. После парсинга склеивать два файла в редакторе CSV-файлов (кнопка на панели инструментов).

    С уважением к вам, Сергей...
     
  3. Max Human

    Max Human New Member Пользователи

    Регистрация:
    20 июн 2014
    Сообщения:
    18
    А как CD определит соответствие цены и ID, при склейке?
    И все таки, как этот ID взять из файла, запомнить в переменную, что бы записать в другой файл?
     
    Последнее редактирование: 28 фев 2015
  4. Max Human

    Max Human New Member Пользователи

    Регистрация:
    20 июн 2014
    Сообщения:
    18
    Наверное стоит описать задачу подробнее. Итак:

    - Есть файл с ценами телефонов - это файл-бызы, который я использую вне CD;
    - Есть файл с ссылками на страницы товары разных магазинов, с этими телефонами, где я беру цену. возле каждой ссылки, заранее, проставил уникальный ID;

    Т.к. в разных магазинах, один и тот же телефон, называется немного по разному, - я решил проводить сопоставление по заранее установленному ID. Таким образом, у меня получилось два файла:
    - file_1.csv - файл с ссылками на товар в разных магазинах, уникальный ID возле каждой ссылки;

    - file_2.csv - файл с ценами на товар, который НЕ перезаписывается, а ДОзаписывается. Т.к. надо просто добавить строку с новой ценой, указав ID и дату.

    Вопрос, в том, как брать ID из файла с ссылками, вместе с ссылкой? Далее, соотносить полученную цену товара с ID который я взял вместе с ссылкой, что бы записать в файл с ценами?

    Для дозаписывания в файл, исп. [SAVETOFILE:test_2.csv{add}].....[/SAVETOFILE]
     
    Последнее редактирование: 28 фев 2015
  5. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Есть только функция склейки двух файлов по ключевому столбцу (ID). Об этой функции я вам уже ранее говорил. Ничего другого вам сейчас предложить не могу.
     
  6. Max Human

    Max Human New Member Пользователи

    Регистрация:
    20 июн 2014
    Сообщения:
    18
    Сергей, спасибо

    Склейка подходит тоже, только придется промежуточный файл заводить.

    Интересует вопрос такой: функция "Склейка файла" - является частью проекта? Если настраивать планировщик, склейка будет выполняться вместе с конкретным проектом? Будет одна склейка для всех проектов или у каждого проекта своя склейка? Или надо в ручном режиме склеивать, после выполнения каждого проекта?
     
  7. Root

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

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

    Задачи автоматизации склейки ранее особо не требовались. Ее сейчас делать только "вручную".

    Подумаю над вопросами автоматизации этого дела. Следите за логом изменений...

    С уважением к вам, Сергей...
     
  8. Max Human

    Max Human New Member Пользователи

    Регистрация:
    20 июн 2014
    Сообщения:
    18
    Тогда, что бы все было по феншую, при склейки,рассмотрите возможность добавления таких функций:

    1. Одна склейка = один проект;
    1.1. Или так - склейка создается и существует за пределами проекта парсинга, а при создании проекта парсинга, - можно выбрать из списка, какую склейку использовать в данном проекте парсинга. так даже будет удобнее;

    2. При автоматизации - склейка выполняется после завершения проекта (парсинга);

    3. Вместо результирующего файла склейки - указываем шаблон для склейки (CD его не изменяет);

    4. Результирующий файл склейки - создается автоматически, имя и директорию сохранения указывает пользователь, при создании проекта склейки;

    5. Наличие галочки - удалить файлы парсинга после склейки (остается только результирующий файл склейки и шаблон склейки);

    6. И самое главное - возможность добавлять два и более "ключевых столбцов" - позволит более гибко управлять дынными (например, когда надо сопоставить данные не только по id, но и по дате, например).

    p.s. результирующий файл CD создает на основе шаблона, т.е. просто копирует шаблон и дальше работает с результирующим файлом. Это надо для того, что бы руками каждый раз не создавать шаблон склейки заново и для каждого проекта шаблон может быть свой, это удобно.

    p.p.s. будет круто :)
     
    Последнее редактирование: 1 мар 2015

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