Рубрики
Без рубрики

Автоматизируйте ваши веб -страницы с помощью «Webbot 🤖» без особого кода 🚀🔥

Что такое Webbot? Webbot – это библиотека веб -автоматизации в Python. Чтобы быть более описательным, это … с меткой Octograd2020, WebDev, Python, Automation.

Что такое Webbot?

Webbot – это библиотека веб -автоматизации в Python. Чтобы быть более описательным, это библиотека, используемая для автоматизации веб -браузеров, и, в некоторой степени, может использоваться для автоматизации пользовательского интерфейса и конечного тестирования. Но почему вы должны использовать это, когда ясно, что есть и другие альтернативы 😄

Почему вы можете использовать Webbot?

Вот некоторые из функций, которые я перечислил на своей странице GitHub, которые я прямо цитирую здесь:

  • Используйте любую комбинацию селекторов, таких как идентификатор, имя, текст, CSS и т. Д., Чтобы выполнить действия по элементам с одной строкой кода.
  • Автоматизируйте и тестируют страницы, загруженные динамически с помощью JavaScript.
  • Нажмите на любую кнопку или ссылку, не беспокоясь о том, чтобы сначала найти элемент или знание селекторов CSS, XPath и т. Д.
  • Smart Algorithm, который находит лучшие соответствующие элементы, на которых вы хотите выполнить действие.
  • Автоматизация, предназначенная для работы даже в случае веб -страниц с динамически изменяющимся идентификатором и именем класса
  • Чрезвычайно минимизирует код, необходимый для выполнения действий ввода, таких как клики и действия клавиатуры.
  • Получить источник веб -страницы, файлы cookie, общее количество вкладок, заголовок веб -страницы и т. Д.
  • Смоделировать нажатия клавиш и специальные комбинации клавиш
  • Двунаправленная прокрутка
  • Выполните действие на элементах веб -страницы, применяя различные фильтры для выбора элементов.
  • Выполните действие по нескольким элементам одновременно.
  • Если в определенных элементах нет текста или видимого свойства, то используйте их идентификатор, класс, CSS_SELECTOR, XPATH, TAG и т. Д.
  • Весь процесс автоматизации может быть сделан без необходимости открывать окно браузера, то есть в фоновом режиме в качестве консольного процесса (см. Документы для более подробной информации)

Ссылка на код

nateshmbhat/webbot

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

🤖 Crazy Smart Smart Web Automation и библиотека тестирования для Python

Webbot обеспечивает большую функциональную автоматизацию, чем Selenium для всех видов автоматизации веб -страницы. Поскольку основная часть веб -автоматизации состоит в том, чтобы выполнять действия, такие как щелчок и введите элементы веб -страницы, Webbot автоматически обрабатывает поиск правильных элементов для выполнения действий.

Купить мне кофе 😇

Функции:

  • Нажмите на любую кнопку или ссылку, не беспокоясь о том, чтобы сначала найти элемент или знание селекторов CSS, XPath и т. Д.
  • Автоматизируйте и тестируют страницы, загруженные динамически с помощью JavaScript.
  • Smart Algorithm, который находит лучшие соответствующие элементы, на которых вы хотите выполнить действие.
  • Весь процесс автоматизации может быть сделан без необходимости открывать окно браузера, то есть в фоновом режиме в качестве консольного процесса (см. Документы для более подробной информации)
  • Используйте любую комбинацию селекторов, таких как идентификатор, имя, текст, CSS и т. Д., Чтобы выполнить…

Вот пример фрагмента кода Webbot в соответствии с действием 🥳

Приведенный ниже код сначала перейдет на Google.com и найдет поиск песни “Hello It Me”, а затем вернется в Google и войдет в систему с предоставленной электронной почтой и паролем.

from webbot import Browser 
web = Browser()
web.go_to('google.com') 
web.type('hello its me')  # or web.press(web.Key.SHIFT + 'hello its me')
web.press(web.Key.ENTER)
web.go_back()
web.click('Sign in')
web.type('mymail@gmail.com' , into='Email')
web.click('NEXT' , tag='span')
web.type('mypassword' , into='Password' , id='passwordFieldId')
web.click('NEXT' , tag='span')

Если вы хотите использовать какой -то более низкий уровень “find_element_by …” Сами функционирует, вы все еще покрыты 😁. Просто получите базовый объект Driver Selenium, как это: web.driver

Почему и как я это сделал?

Ну, честно говоря, это было в основном о написании слишком большого количества кода при использовании селена для веб -автоматизации.

Я использовал селен для некоторых из моих проектов, и мне казалось, что я пишу слишком много кода, чем необходимо. Я понял, что причина этого произошла не из -за какой -либо неэффективности или плохого API селена Но это было только из -за того, как было смоделировано взаимодействие с Интернетом.

Какая ? Что я имею в виду под этим?

  • Код веб -автоматизации сначала требует, чтобы элемент был впервые найден, прежде чем мы выполним какое -либо действие.
  • Это означает, что мы в конечном итоге пишем слишком много “find_element_by _…” Код, а не сосредотачиваемся на том, чтобы просто делать то, что мы хотели: то есть просто нажмите на эту чертову кнопку, которая просто сказала «Нажмите меня».
  • Итак, в основном мы сначала находим элемент, который мы искали, а затем выполняем действие. Действие может быть щелчком или клавиатурой, прокрутка и т. Д.
  • Но то, что мы, разработчики, – это просто выполнить действие на каком -то элементе, а не беспокоиться о том, чтобы найти все это сами.
  • В ореховой оболочке мы хотим, чтобы подход, ориентированный на действия, а не элемент, ориентированный на элемент.

С Webbot это подход, который я использую. Подход, ориентированный на действия, а не обычный подход, ориентированный на элемент. Вы говорите Webbot, какое действие вы хотите делать, а не пытаетесь беспокоиться обо всех этих селекторах CSS, XPath и т. Д. В зависимости от типа действий, который вы выполняете, будь то щелчок, тип, Keypress и т. Д., У него есть алгоритм оценки, который найдет соответствующие элементы на основе действия.

Так, например, если вы пытаетесь запустить web.click ('Войдите') Затем он дает оценку всем элементам, содержащим текст «Вход», и кликабельные элементы (кнопки, якорные теги, элементы с Onpress).

Дополнительные мысли/чувства/истории

Я сделал этот проект в течение моих студенческих дней. Это мой выпускной год. Грузы и множество воспоминаний, чтобы дорожить. Теперь, когда я оглядываюсь назад, я понимаю, что это были лучшие дни в моей жизни. Это были дни, когда я жил больше, чем когда -либо! Будет скучать по всему этому, черт возьми. В любом случае, я пишу эту статью, потому что я получил электронное письмо от Github о церемонии «выпускной» для выпускников 2020 года. Я более чем рад принять участие в этом:)

Спасибо ребята:)

Вы можете проверить мой другой пост на Dev, который я написал ранее здесь, где я говорю об использовании Electron с помощью React и Support Support:

Терминал Tweaker: проект электронного реакта для настройки нового терминала Windows до контента сердца ❤.

Вы можете проверить меня на: GitHub: https://github.com/nateshmbhat LinkedIn: https://www.linkedin.com/in/nateshmbhat Instagram: https://www.instagram.com/nateshmbhat Facebook: https://www.facebook.com/profile.php ? … Twitter: https://twitter.com/nateshmbhat

Спасибо за чтение до этой последней строки 😍 !!! Ты потрясающий 😎!

Оригинал: “https://dev.to/nateshmbhat/automate-your-web-pages-with-webbot-without-much-code-6ih”