Можно ли при парсинге в CSV добавить поле с информацией о размере скачанной картинки в kb?

Discussion in 'Скачивание картинок и файлов' started by CSVCS, Dec 30, 2016.

  1. CSVCS

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

    Joined:
    Dec 28, 2016
    Messages:
    42
    Всем здрасти! Возможно мой вопрос звучит немного странно, поэтому сразу отвечу на вероятный встречный вопрос "А зачем вам это надо?" Дело в том, что стоит задача спарсить товары с аллиэкспресс, с которой я с помощью форума уже почти справился. Но когда я зашел в папку с картинками, то уведел, что из 180 товаров уникальными являются только 30, а остальные клоны. Клоны товаров, имеют разные названия, характеристики, имеются отличая даже в описании, имена картинок тоже отличаются!!! (но при этом файлы картинок имеют одинаковый размер). Потратив достаточно много времени на анализ и сортировку товаров по схожим признакам в ручную и не получив окончательного результата - я бросил это неблагодарное занятие. Единственный явный признак по которому можно объединить клоны - это размер файла основной картинки в kb! (Возможно есть и другие, но мне пока не удалось их выявить).
    При предпросмотре результатов парсинга мы в окне программы видим название картинки и её размер в kb, поэтому я подумал, что было бы здорово в моём случае вытянуть эту информацию в таблицу CSV. Подскажите пожалуйста, возможно ли это?
     
    Last edited: Dec 30, 2016
  2. Root

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

    Joined:
    Mar 10, 2010
    Messages:
    14,818
    Город:
    Барнаул
    Здравствуйте.

    Предоставьте два примера "клона" (ссылки на товары), попробуем найти решение.
     
  3. CSVCS

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

    Joined:
    Dec 28, 2016
    Messages:
    42
    Hidden Content:
    **Hidden Content: To see this hidden content your post count must be 1000 or greater.**
     
  4. Root

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

    Joined:
    Mar 10, 2010
    Messages:
    14,818
    Город:
    Барнаул
    Здравствуйте.

    Скачайте и установите доработанную версию программы (в программе: главное меню - файл - центр обновлений -> кнопка "обновить программу/скачать обновленную сборку").

    Обратите внимание на новый макрос шаблона вывода [DFSIZE(n)] (где n - номер загруженного файла (в пределах одного документа)), который выводит размер скачанного с помощью <DOWNLOADFILE> файла в байтах.

    Если делать проверку по размеру только одной картинки, по теории вероятности, можно получить случайные совпадения размеров двух РАЗНЫХ картинок. Поэтому, рекомендую делать проверку, например, по строковой сумме размеров трех изображений (как на скриншоте):
    2017-01-08_07-38-27.png
    В этом случае, вероятность появления случайных совпадений размеров разных картинок очень мала (можно пренебречь).

    С уважением к вам, Сергей...
     
  5. Root

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

    Joined:
    Mar 10, 2010
    Messages:
    14,818
    Город:
    Барнаул
    Заметил один момент! У главных картинок "дублей" товаров разные размеры!!! Предполагаю, что из-за разной META-DATA.

    Также заметил, что размеры миниатюр изображений, кроме первых миниатюр, одинаковые:
    2017-01-08_09-00-50.png
    2017-01-08_09-01-26.png
    2017-01-08_09-02-01.png
    Считаю, что благодаря этому можно решить вопрос!!!
     

    Attached Files:

    CSVCS likes this.
  6. CSVCS

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

    Joined:
    Dec 28, 2016
    Messages:
    42
    Спасибо за развернутый ответ с картинками (очень облегчает понимание). У меня версия программы Content Downloader X1 версии 11.1.0000081 (05.01.2017), но почему-то в списке макросов я не нахожу DFSIZE. Загрузил вложенный вами проект, понял как это работает. Спасибо за подсказку на счет размеров миниатюр, сам наверно не догадался бы. Я то сравнивал размеры главных изображений в кБ, а в байтах они действительно отличаются.
     
    Root likes this.
  7. Root

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

    Joined:
    Mar 10, 2010
    Messages:
    14,818
    Город:
    Барнаул
    Пожалуйста.

    Ссылки недоступны для гостей
    2017-01-08_17-18-27.png
     
  8. Gnom41k

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

    Joined:
    Jul 20, 2015
    Messages:
    47
    Столкнулся с аналогичной проблемой
    Hidden Content:
    **Hidden Content: To see this hidden content your post count must be 30 or greater.**
    на странице одно и то же изображение размещено дважды, было бы здорово иметь возможность отсечь их по размеру как реализовать это с помощью DFSIZE ума не приложу
     
  9. Root

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

    Joined:
    Mar 10, 2010
    Messages:
    14,818
    Город:
    Барнаул
    Здравствуйте.

    Ссылки недоступны для гостей
     
  10. Gnom41k

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

    Joined:
    Jul 20, 2015
    Messages:
    47
    Пересмотрел видео но опять же не могу понять как использовать размер. У меня такая конструкция
    [DUPIGNORE][IMAGESNAMES][TRANSLITE][CLEAR][SKU_UNIQUE:10LD]<CD_GRAN_1!>[/SKU_UNIQUE][/IMAGESNAMES][REPLACE(,||)][CSVIMAGES(img)]<CD_GRAN_4!>[/CSVIMAGES][/REPLACE][/DUPIGNORE]
    Я так понимаю мне нужно использовать [KEY] в связке с [DELETEKEY] и тогда одинаковые по размеру изображения не будут сохраняться. Но вопрос теперь как получить размер изображений и передать их в KEY
     
  11. Gnom41k

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

    Joined:
    Jul 20, 2015
    Messages:
    47
    Переписал условие на повторяющиеся границы и с макросом downloadfile
    и в настройки границ прописал
    [DUPIGNORE][DELETEKEY][KEY][DFSIZE(1)],[DFSIZE(2)],[DFSIZE(3)][/KEY]<DOWNLOADFILE>[VALUE]</DOWNLOADFILE>[/DUPIGNORE]

    и в самом шаблоне результата нет
     
  12. Root

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

    Joined:
    Mar 10, 2010
    Messages:
    14,818
    Город:
    Барнаул
    А почему вы лог выполнения функций (в нижней части окна предпросмотра результатов парсинга контента) не смотрите? И почему в один параметр [KEY] вставляете сразу три значения.
     
    Last edited: May 4, 2019
  13. Root

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

    Joined:
    Mar 10, 2010
    Messages:
    14,818
    Город:
    Барнаул
    Ближе к ночи видео постараюсь сделать.
     
  14. Root

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

    Joined:
    Mar 10, 2010
    Messages:
    14,818
    Город:
    Барнаул
     

    Attached Files:

  15. Gnom41k

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

    Joined:
    Jul 20, 2015
    Messages:
    47
    Как всегда большое спасибо за помощь и наглядный пример в решении. Но все же что бы данный вопрос закрыть всецело, хотелось бы все таки узнать как работать с данным макросом в ключе именно дублей размеров изображений. Просто пример который на видео имеет все же в названии уникальный идентификатор но есть такие случаи когда изображение отличается только по названию и уникального идентификатора в нем нет. Заранее спасибо.
     
    Root likes this.
  16. Root

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

    Joined:
    Mar 10, 2010
    Messages:
    14,818
    Город:
    Барнаул
    Сходу не могу подсказать. Если вопрос возникнет, приведите пример такого товара.
     
  17. Gnom41k

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

    Joined:
    Jul 20, 2015
    Messages:
    47
    для примера вот
    Hidden Content:
    **Hidden Content: To see this hidden content your post count must be 30 or greater.**
     
  18. Root

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

    Joined:
    Mar 10, 2010
    Messages:
    14,818
    Город:
    Барнаул
  19. Al195

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

    Joined:
    Oct 19, 2021
    Messages:
    43
    Здравствуйте!
    подскажите пожалуйста как привязать размер к скачиванию конкретного файла из <DOWNLOADFILE> ?
    n - номер загруженного файла (в пределах одного документа)
    у меня по документу скачивание вложений pdf перемешиваются со скачанными картинками и получаю каждый раз другой номер файлов
    в итоге не могу привязать к ссылкам размер вложений
     
  20. Root

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

    Joined:
    Mar 10, 2010
    Messages:
    14,818
    Город:
    Барнаул
    Здравствуйте.

    Выведите размер везде (чтобы порядок не нарушался).

    Ненужное очистите с помощью макроса [CLEAR].
     

Share This Page