Веб-скрейпинг VBA

Веб-скрейпинг Excel VBA

Веб-скрейпинг VBA — это метод доступа к веб-страницам и загрузки данных с этого веб-сайта в наши компьютерные файлы. Веб-скрапинг возможен при доступе к внешним приложениям, таким как Internet Explorer. Мы можем сделать это двумя способами: раннее связывание и позднее связывание.

Веб-скрапинг с помощью VBA означает, что когда мы используем VBA для извлечения данных из других источников в Интернете, для этого может потребоваться вход в систему для источников данных, но сначала для этого нам нужно включить ссылки из раздела инструментов в редактор VBA для библиотеки Microsoft HTML для доступа в Интернет из VBA.

Не многие из нас знают, что из Excel мы можем получить доступ к веб-страницам и получить данные с этих веб-страниц. Да, вы не ослышались. мы можем просматривать веб-страницы, получать доступ к приложениям для просмотра и многое другое. В этой статье мы подробно покажем вам, как написать код Excel VBA для парсинга веб-страниц.

Обычно мы открываем веб-страницы, копируем данные и вставляем их в наши файлы, такие как excel, word или другие файлы. Но в этой статье мы покажем вам, как получить доступ к веб-сайтам из Excel и сделать много других вещей.

VBA-веб-скрейпинг

Вы можете использовать это изображение на своем веб-сайте, в шаблонах и т. д. Пожалуйста, предоставьте нам ссылку на авторствоКак предоставить атрибуцию?Ссылка на статью должна быть гиперссылкой
Например:
Источник: анализ веб-страниц VBA (wallstreetmojo.com).

Как удалить данные веб-сайта с помощью VBA?

Вы можете скачать этот шаблон Excel для веб-скрейпинга VBA здесь — Шаблон Excel для веб-скрейпинга VBA

Когда мы хотим получить доступ к любым другим приложениям из Excel, мы можем сделать это разными способами, например, «Раннее связывание» и «Позднее связывание». На начальном этапе всегда безопасно использовать технику «Раннее связывание».

Для доступа к веб-сайту нам нужны приложения для просмотра, например, «Интернет-проводник». Поскольку это внешний объект, нам нужно сначала установить ссылку.

Выполните следующие шаги для веб-записки.

Шаг 1: Определите переменную VBAОпределите переменную VBAОбъявление переменной необходимо в VBA, чтобы определить переменную для определенного типа данных, чтобы она могла хранить значения; любая переменная, не определенная в VBA, не может содержать значения.читать далее и назначьте тип данных как «Интернет-проводник».

Код:

Sub Web_Scraping()

  Dim Internet_Explorer As internet

End Sub
Пример веб-скрейпинга VBA 1.0

Как вы можете видеть выше, когда мы пытаемся установить ссылку на Internet Explorer, мы не видим «Internet Explorer», потому что «Internet Explorer» — это внешний объект, поэтому нам нужно установить ссылку.

Шаг 2: Чтобы установить ссылку, перейдите в «Инструменты» & выберите «использованная литература».

Пример веб-скрейпинга VBA 1.1.0

В окне ниже прокрутите вниз и выберите «Интернет-элементы управления Майкрософт».

Пример 1.2

Шаг 3: Установите флажок «Microsoft Internet Controls» и нажмите «ОК». Теперь мы должны увидеть это имя объекта в списке IntelliSense.

Код:

Sub Web_Scraping()

  Dim Internet_Explorer As inter

End Sub
Пример веб-скрейпинга VBA 1.3.0

Шаг 4: Выберите «InternetExplorer».

Код:

Sub Web_Scraping()

   Dim Internet_Explorer As InternetExplorer

End Sub
  Пример 1.4.0

Шаг 5: Далее нам нужно установить ссылку для включения Internet Explorer. Поскольку это объектная переменная, нам нужно использовать «Наборключевое слово для установки ссылок.

Код:

Sub Web_Scraping()

  Dim Internet_Explorer As InternetExplorer
  Set Internet_Explorer = New InternetExplorer

End Sub
  Пример 1.5.0

Шаг 6: Теперь, используя переменную «Интернет_Проводник,Мы можем использовать свойства и методы Internet Explorer.

Введите имя переменной и поставьте точку, чтобы увидеть список IntelliSense.

Код:

Sub Web_Scraping()

  Dim Internet_Explorer As InternetExplorer
  Set Internet_Explorer = New InternetExplorer
  Internet_Explorer.

End Sub
Пример веб-скрейпинга VBA 1.6.0

Шаг 7: Теперь, чтобы просмотреть приложение Internet Explorer, нам нужно выбрать «Видимый» и установите статус «Истинный».

Код:

Sub Web_Scraping()

  Dim Internet_Explorer As InternetExplorer
  Set Internet_Explorer = New InternetExplorer
  Internet_Explorer.Visible = True

End Sub
  Пример 1.7.0

Теперь запустите код, и вы должны увидеть Интернет-проводник открывается на вашем компьютере.

  Пример 1.8

Шаг 8: Поскольку веб-адрес не указан, мы видим только пустую страницу. Чтобы передать веб-адрес Internet Explorer, нам нужно:Навигацияметод.

Код:

Sub Web_Scraping()

  Dim Internet_Explorer As InternetExplorer
  Set Internet_Explorer = New InternetExplorer
  Internet_Explorer.Visible = True
  Internet_Explorer.Navigate(

End Sub
Пример 1.9.0

Шаг 9: Как вы можете видеть выше, метод «Навигация» спрашивает, по какому URL следует перемещаться в Internet Explorer. Теперь мне нужно открыть сайт».Уоллстритнмоджо,” и я могу указать URL-адрес следующим образом. «https://www.wallstreetmojo.com/»

Код:

Sub Web_Scraping()

  Dim Internet_Explorer As InternetExplorer
  Set Internet_Explorer = New InternetExplorer
  Internet_Explorer.Visible = True
  Internet_Explorer.Navigate ("https://www.wallstreetmojo.com")

End Sub
Пример веб-скрейпинга VBA 1.10.0

Теперь запустите код, мы должны увидеть указанную страницу веб-адреса в Internet Explorer.

Пример 1.11

Здесь у нас возникает проблема, заключающаяся в том, что после открытия веб-страницы нашему коду необходимо дождаться полного открытия веб-страницы.

Шаг 10: Нам нужно использовать цикл «Do While» в VBA, чтобы фактически дождаться, пока наш код пойдет дальше, пока указанная страница не будет полностью загружена.

Итак, добавьте ниже цикл «Do While», чтобы заставить макрос ждать, пока указанная веб-страница не перейдет в «Состояние готовности завершено» Режим.

Код:

Sub Web_Scraping()

  Dim Internet_Explorer As InternetExplorer
  Set Internet_Explorer = New InternetExplorer
  Internet_Explorer.Visible = True
  Internet_Explorer.Navigate ("https://www.wallstreetmojo.com")
  Do While Internet_Explorer.ReadyState <> READYSTATE_COMPLETE: Loop

End Sub
Пример 1.12.0

Шаг 11: Теперь попробуем получить информацию о сайте в одну строку. Чтобы получить информацию об упомянутой информации веб-адреса, нам нужно использовать «Название местоположения» имущество.

Код:

Sub Web_Scraping()

  Dim Internet_Explorer As InternetExplorer
  Set Internet_Explorer = New InternetExplorer
  Internet_Explorer.Visible = True
  Internet_Explorer.Navigate ("https://www.wallstreetmojo.com")
  Do While Internet_Explorer.ReadyState <> READYSTATE_COMPLETE: Loop
  MsgBox Internet_Explorer.LocationName

End Sub
Пример веб-скрейпинга VBA 1.13.0

Запустите код, и в окне сообщения мы получим информацию о сайте.

  Пример 1.14

Шаг 12: Теперь внизу мы также можем печатать адреса веб-сайтов.

Код:

Sub Web_Scraping()

  Dim Internet_Explorer As InternetExplorer
  Set Internet_Explorer = New InternetExplorer
  Internet_Explorer.Visible = True
  Internet_Explorer.Navigate ("https://www.wallstreetmojo.com")
  Do While Internet_Explorer.ReadyState <> READYSTATE_COMPLETE: Loop
  MsgBox Internet_Explorer.LocationName & vbNewLine & vbNewLine
  & Internet_Explorer.LocationURL

End Sub
Пример веб-скрейпинга VBA 1.15.0

Теперь это расскажет об описании веб-сайта, а также покажет адрес веб-сайта.

  Пример 1.16

Что нужно помнить здесь

  • Веб-скрапинг возможен при доступе к внешним приложениям, таким как Internet Explorer.
  • Мы можем сделать это двумя способами: раннее связывание и позднее связывание. При раннем связывании мы можем увидеть список IntelliSense, но при позднем связывании мы вообще не можем увидеть список IntelliSense.

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *