Как автоматизировать Firefox или Chrome с помощью Excel VBA и Selenium

  • Harry James
  • 0
  • 3199
  • 406
Реклама

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

Что касается производительности, Excel является наиболее распространенным инструментом, используемым людьми для организации финансов, управления проектами. 10 Мощные шаблоны управления проектами Excel для отслеживания. 10 Мощные шаблоны управления проектами Excel для отслеживания. Лучшие шаблоны управления проектами являются лучшими. Получите эти ключевые шаблоны таблиц Microsoft Excel для отслеживания любого проекта. и расстановка приоритетов. Использование задач Excel и Google для создания лучшего инструмента управления целями. Использование задач Excel и Google для создания лучшего инструмента управления целями. В последнее время я начал понимать, что работаю очень усердно, но если кто-то спросил Я чувствую, что я работаю в направлении более широкой цели, я должен сказать, что на самом деле не… На прошлой неделе я описал, как автоматизировать IE. Использование VBA для автоматизации сеансов Internet Explorer из электронной таблицы Excel. Использование VBA для автоматизации сеансов Internet Explorer из электронной таблицы Excel. Его интеграция с Windows позволяет управлять Internet Explorer несколькими удивительными способами, используя Visual Basic для Сценарий приложений (VBA) из любого приложения, которое его поддерживает, например Word, Outlook или Excel. путем настройки групп URL-адресов в листах Excel, а затем с помощью объекта IE в Windows для автоматизации запуска групп URL-адресов прямо из Excel.

После этой статьи многие читатели спрашивали, как сделать то же самое в Firefox или Chrome. Поскольку ни в Firefox, ни в Chrome нет аналогичного объекта, включенного в Windows, который можно использовать для автоматизации VBA, выполнение аналогичных действий в других браузерах требует дополнительного шага. Этот шаг - установка Selenium VBA - оболочки Windows COM для Selenium..

Он позволяет вам выполнять вызовы из любого приложения, которое поддерживает VBA, чтобы открыть браузер, а не только IE, и управлять этим сеансом браузера. Это мощный инструмент автоматизации, который так часто используется, что многие популярные производители браузеров включают Selenium в качестве родной части своего браузера. Использование его в ваших приложениях автоматизации обязательно будет поддерживаться на долгие годы.

Автоматизация Firefox и Chrome с помощью Selenium

Прежде чем начать работу с этим проектом, вам необходимо загрузить и установить оболочку Selenium VBA. Затем, как я уже говорил в статье об автоматизации IE Использование VBA для автоматизации сеансов Internet Explorer из электронной таблицы Excel Использование VBA для автоматизации сеансов Internet Explorer из электронной таблицы Excel Его интеграция с Windows позволяет управлять Internet Explorer несколькими удивительными способами, используя Сценарий Visual Basic для приложений (VBA) из любого приложения, которое его поддерживает, например Word, Outlook или Excel. Чтобы написать любой VBA в Excel, необходимо войти в режим разработки и просмотреть код. Если вы никогда не делали этого раньше, вам просто нужно “разработчик” пункт меню, и нажмите на режим проектирования. Нажми на “Вставить” Нажмите кнопку ActiveX и нарисуйте ее где-нибудь на своем листе. Как только вы это сделаете, нажмите на кнопку, а затем нажмите на “Посмотреть код”.

В окне редактора кода в левом нижнем углу убедитесь, что “название” и “титр” чтобы отразить, для чего кнопка. В этом случае кнопка будет открывать список URL-адресов, которые вы указали в электронной таблице. В моем случае я просто назвал его cmdLoadURLs и сделал подпись “Загрузить URL” (это то, что отображается на кнопке).

Затем вам нужно включить Selenium Wrapper, нажав на меню «Сервис», затем нажмите “Рекомендации”, а затем перейдите к ссылке под названием “Библиотека типов SeleniumWrapper”. Установите флажок для ссылки и нажмите кнопку ОК..

Теперь вы готовы начать писать код автоматизации браузера с помощью Selenium Wrapper.!

Функциональность Selenium Wrapper

Selenium VBA Wrapper дает вам гораздо больше функциональности, чем я смогу показать вам в этой статье. Вы можете увидеть, сколько доступно за пределами WebDriver, определив объект Selenium как “Новый SeleniumWrapper”. Когда вы вводите точку, в ней будут раскрыты все элементы типов объектов, которыми вы можете управлять, например изображения браузера, файлы PDF, клавиши клавиатуры и т. Д..

Этот пример кода будет использовать WebDriver. Как только вы используете объект Selenium WebDriver в своем коде и вводите точку, вы увидите очень длинный список методов и свойств, которые вы можете использовать для автоматизации вашего веб-браузера..

Чтобы узнать все, что доступно, может потребоваться некоторое время, но Google может найти несколько хороших примеров за примерами, доступными на странице кода Google. К сожалению, насколько я знаю, не существует прямого руководства по использованию Selenium, но я был бы благодарен всем читателям, которые могли бы предоставить любые ресурсы!

Написание вашего кода VBA Selenium

В этом примере, как и в статье IE, я создал список URL-адресов, которые я хочу автоматически открывать в Firefox. Затем я создал кнопку, как описано в первой части этой статьи.

Код за кнопкой прост, но я собираюсь объяснить, что делает каждый раздел. Прежде всего, вам нужно запустить приложение Firefox. “selenium.start” метод сделает это. Методы setTimeout и setImplicitWait не являются критическими, но могут предотвратить блокировку вашего приложения навсегда, если браузер по какой-то причине не отвечает.

Dim selenium As New SeleniumWrapper.WebDriver Dim FF As Object Dim intRowPosition как Integer Dim keys As Новый SeleniumWrapper.keys selenium.Start "firefox", "http://www.google.com" selenium.setTimeout ("120000") selenium. setImplicitWait (5000) intRowPosition = 2 selenium.Open Sheet1.Range ("A" & intRowPosition)

Последняя пара строк устанавливает строку данных Excel для чтения (вторая строка, где первый URL-адрес хранится в электронной таблице), а затем выполняет “selenium.open” метод, чтобы прочитать URL из этой таблицы и открыть его в Firefox.

Следующий раздел кода увеличивает указатель строки и читает следующий URL-адрес в списке. Если ячейка не пуста, она использует метод SendKeys для запуска новой вкладки в Firefox, считывает следующий URL из этой продажи и открывает URL в этой новой вкладке.

intRowPosition = intRowPosition + 1 Пока Sheet1.Range ("A" и intRowPosition) vbNullString selenium.SendKeys keys.Control & "t" selenium.Open Sheet1.Range ("A" & intRowPosition) intRowPosition = intRowPosition + 1 Wend Set IE = ничего

Скрипт будет перебирать весь ваш список, пока все URL не будут открыты в их собственных вкладках. Вот браузер после того, как цикл прошел через второй раз и открыл MUO в новой вкладке.

Если вы хотите использовать этот код для Chrome, все, что вам нужно сделать, это изменить строку “selenium.Start “Fire Fox”” в “хром” вместо.

Теперь создайте свой собственный скрипт

Как я уже упоминал выше, лучший способ изучить силу Selenium Wrapper - это набрать “селен” в своем коде нажмите точку и просто просмотрите очень длинный список доступных свойств и методов. Например, вы можете использовать свойство .URL для получения URL-адреса открытой в данный момент вкладки в Firefox или Chrome..

Как вы можете видеть, есть еще много вещей, которые вы можете сделать, которые выходят далеко за рамки этой статьи. Но поэкспериментируйте и повеселитесь. К счастью, во многих функциях появится всплывающая подсказка, которая показывает, какие параметры ожидает каждая функция. Это может очень помочь, когда дело доходит до выяснения, как его использовать.

Используете ли вы VBA для автоматизации вашего компьютера? Вы когда-нибудь автоматизировали свои сессии браузера от VBA? Поделитесь своими собственными советами и опытом с ним в разделе комментариев ниже!




О современных технологиях, просто и доступно.
Ваш гид в мире современных технологий. Узнайте как использовать технологии и гаджеты, которые нас окружают каждый день и научитесь открывать интересные вещи в Интернете.