Скачивание файлов

Парсер сайтов и файлов (парсинг данных с сайта в Excel)

Структура программы «Парсер сайтов»

Надстройка Parser для Excel — простое и удобное решение для парсинга любых сайтов (интернет-магазинов, соцсетей, площадок объявлений) с выводом данных в таблицу Excel (формата XLS* или CSV), а также скачивания файлов.

Авторизация на сайте atsenergo.ru

Данный макрос выполняет 2 HTTP запроса (GET и POST) для авторизации на сайте atsenergo.ru
В случае успешной авторизации, функция возвращает идентификатор сессии,
который используется в дальнейших запросах для скачивания файлов.

Макрос представляется сайту браузером Google Chrome
Чтобы код сработал, надо задать правильные логин-пароль

Макрос опубликован в качестве примера использования объекта WinHttpRequest для работы с сайтами.

Скачивание файла с сайта с авторизацией

Пример макроса для скачивания файла с авторизацией.

Для его работы, надо подключить библиотеку Microsoft WinHTTP Services (version 5.1.) в меню Tools - References

Сначала выполняется POST-запрос для авторизации,
потом GET-запрос для скачивания файла

Надстройка для вставки картинок (изображений) в Excel

Поиск изображений в папке, с последующей вставкой на лист Excel

Надстройка позволяет искать в выбранной папке изображения, основываясь на содержимом ячеек таблицы Excel, и производить вставку найденных изображений в соседние ячейки (или в примечания к этим ячейкам).

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

Внимание:

21.08.2011 надстройка обновлена - добавлены новые функции, устранены недостатки, учтены ваши пожелания и замечания.
06.10.2012 надстройка полностью переработана - добавлено меню и новые функции, встроена поддержка обновлений.
24.01.2013 добавлена функция поиска недостающих картинок в Google - теперь, за считанные минуты, можно наполнить прайс-лист подходящими фотографиями товара.
18.03.2013 реализовано сжатие вставляемых картинок - причем не только при вставке в ячейки, но и в примечания.
24.04.2016 настройка переведена на новый движок, а также восстановлена работа поиска изображений в Google.

Особенности надстройки:

  • поиск картинок в подпапках (глубина поиска по подпапкам не ограничена)
  • установка выбранного пользователем размера для вставляемых изображений
  • отображение состояния поиска и вставки изображений (прогресс-бар)
  • вывод результатов обработки таблицы (сколько изображений вставлено, сколько не найдено)
  • добавление гиперссылок к вставляемым изображениям (по щелчку на картинке открывается исходный файл)
  • 2 режима поиска файлов - по точному совпадению имени файла, и по началу имени файла-изображения
  • 2 режима вставки картинок - подгонка размеров под ячейку, или соблюдение пропорций исходного изображения
  • вывод количества файлов в выбранной папке
  • возможность выбора столбца с названиями файлов, и указания номера столбца для вставляемых изображений
  • возможность вставки изображений в комментарии к ячейкам
  • поиск недостающих фотографий товара в Google (в т.ч. поиск по заданным сайтам)
  • режим вставки изображений сразу в несколько столбцов

 

Загрузка изображений из интернета по ссылкам в одну папку

Загрузка файлов (изображений) из интернета

Макрос предназначен для загрузки изображений (или любых других файлов) из интернета, и сохранения скачанных файлов в одну папку.

Исходные данные для работы макроса:

таблица, в которой содержатся по меньшей мере 2 столбца - один с гиперссылками, второй - с именами файлов.

Особенности макроса:

  • создаваемым файлам присваиваются имена из выбранного столбца листа Excel
  • макрос корректно работает со ссылками, содержащими символы кириллицы
  • автоматическое добавление расширения для скачиваемых файлов (если имя файла из ячейки его не содержит)

Если вам требуется вставлять много изображений на лист Excel, - то вам поможет надстройка, позволяющая производить поиск изображений в заданной папке, и производить вставку картинок в ячейки или примечания

Кроме того, надстройка для вставки изображений в Excel умеет загружать картинки из интернета (по ссылкам в таблице Excel)

Бесплатно скачать надстройку вставки картинок в Excel

 

Настройки макроса легко выполнить, изменив в коде значения констант:

    Const НазваниеПапкиДляФайлов$ = "Фотографии"    ' так будет называться создаваемая папка
    Const НомерСтолбцаСГиперссылками = 6    ' из этого столбца макрос берет гиперссылки для загрузки файлов
    Const НомерСтолбцаСИменамиФайлов = 4    ' из этого столбца макрос берет имена для создаваемых файлов
    Const НомерПервойСтрокиСДанными = 2    ' с какой строки листа начинаем обрабатывать данные
    Const РасширениеФайлов$ = ".jpg"    ' этот текст добавляется справа к именам создаваемых файлов

Смотрите также аналогичный (более сложный) макрос загрузки изображений

Макрос проверки доступности веб-ресурса

Данная функция позволяет проверить, доступен ли тот или иной веб-ресурс с вашего компьютера, и получить код состояния HTTP

Как известно, при переходе по ссылке (URL), веб-сервер возвращает код состояния HTTP.

Наиболее популярный коды ответа веб-сервера: (перечень всех кодов состояния можно посмотреть в Википедии)

  • 200 OK («хорошо»)
  • 403 Forbidden («запрещено»)
  • 404 Not Found («не найдено»)

Код состояния - это целое число из 3 цифр.
По первой цифре можно определить, доступен ли ресурс: если первая цифра 2, то ресурс доступен, если любая другая - то скорее всего нет.

Пример макроса, проверяющего доступ к различным ресурсам по URL:

Наружная реклама. Адресная программа. Рекламные щиты

Скриншот листа коммерческого предложения - описание, фото и карта рекламной конструкции

Программа предназначена для формирования коммерческих предложений по наружной рекламе.

В качестве исходных данных выступает файл Excel со списком рекламных объектов.

Список объектов должен содержать следующую информацию (в отдельных столбцах):

  • адрес рекламной конструкции (щита)
  • сторона рекламного щита или перетяжки (А, Б, В, и т.п.)
  • ссылки на фото и карту рекламной конструкции
    (поддерживаются ссылки, не только ведущие на файлы-изображения, но и ссылки на страницу рекламного щита, где размещена информация о конструкции с фотографией и картой)

Пример исходной таблицы: (нажмите для увеличения)

Исходная таблица со списком рекламных щитов, и ссылками на фото и карты

Для каждой строки исходной таблицы, программа создаёт в том же файле отдельный лист,
на который помещает информацию о рекламном щите (перетяжке), а также фотографию и карту объекта.

Фотографии загружаются из интернета, по заданным ссылкам в столбце (столбцах) «Фото / карта»,
и размещаются на создаваемых листах (слева - фото объекта, справа - его карта)

 

Самая сложная часть алгоритма программы - получение ссылок на изображения (фото и карты), имея в наличии только ссылку на страницу рекламной конструкции
(а, зачастую, имея только адрес сайта, и название конструкции)

Автоматическое обновление книг и надстроек Excel

Форма настроек программы, выбора устанавливаемых обновлений, активации надстройки

Программа предназначена для реализации возможности автоматического и ручного обновления надстроек Excel, а также разграничения доступа и регистрации (активации) программного продукта.

Особенности данного решения:

 

Скачать файл из интернета без использования WinAPI

Часто требуется макросом скачать некий файл из интернета.
Обычно в этом помогает WinAPI-функция URLDownloadToFile, но есть также возможность загрузить файл без её использования:

Чем чревато использование функции URLDownloadToFile - по сути, ничем, кроме как необходимостью прописывать её в 4 вариантах,
для обеспечения совместимости с 64-битной Windows и Office 2010

Я же предлагаю другое решение - функцию DownloadFile с использованием объектов Microsoft.XMLHTTP и ADODB.Stream:

 

Sub ПримерИспользования()
    СсылкаНаФайл$ = "http://excelvba.ru/sites/default/files/3.jpg"
    ПутьДляСохранения$ = "C:\ПЖиВ.jpg"
 
    ' скачиваем файл из интернета
    DownloadFile СсылкаНаФайл$, ПутьДляСохранения$
 
    ' открываем скачанный файл
    CreateObject("wscript.shell").Run """" & ПутьДляСохранения$ & """"
End Sub

Программа формирования прайс-листов для каталога Onliner.by

Форма подбора соответствия для модели ноутбука

Программа предназначена для формирования прайс-листов на ноутбуки с соответствии с требованиями интернет-каталога Onliner.by

Основные функции программы:

(учитываются цены фирм-конкурентов, цены onliner.by и надбавка фирмы)

  • загрузка каталога ноутбуков (названия, характеристики, цены) с сайта onliner.by в файл Excel, и обновление этого каталога
  • назначение соответствий моделей ноутбуков
  • (моделям с Onliner назначаются соответствия из внтуреннего каталога компании)

  • загрузка прайс-листов фирм-конкурентов для сравнительного анализа цен
  • автоматическое формирование цен на модели ноутбуков из внутреннего каталога компании
  • создание прайс-листа в формате каталога Onliner.by (экспорт в CSV) с последующей отправкой созданного файла на сервер по FTP

 

При назначении соответствий моделей есть возможность указать наличие модели на складе, тип расчёта, и срок гарантии.

Поддерживаются 2 типа соответствия - полное, и неполное. (для неполного соответствия можно указать отличие моделей)

 

Посмотреть все скриншоты программы