Вносить входные данные в уже запущенный webdriver

#python #selenium #pytest

#питон #selenium #pytest #python

Вопрос:

Я использую Pytest для ввода сценария автоматизации с помощью драйвера Selenium Chrome. Я все еще новичок в программировании. Есть несколько вещей, которые я не могу понять, как автоматизировать, поэтому я пробую другой маршрут.

Можно ли вносить входные данные в запущенный скрипт? Например, могу ли я запустить скрипт для открытия указанной веб-страницы (например, Facebook). Затем я ввожу данные для входа в систему и позволяю скрипту взять их оттуда?

У меня уже есть сценарий, но он не работает, я не знаю, возможно ли это или мой сценарий неправильный

Ответ №1:

В будущем при публикации в StackOverflow вы всегда должны включать код, по которому у вас есть вопрос, чтобы мы могли видеть, что вы пробовали и как вам лучше всего помочь.

Вы можете вводить данные в работающий скрипт так же, как и в обычной программе на Python.

 browser.get('yourURL.com/login')
username_box = browser.find_element_by_id('usernameID') #textbox on page to enter username
password_box = browser.find_element_by_id('passwordID')

username = input("Enter a username: ") #ask the user for input
password = input("Enter a password: ")

username_box.send_keys(username) #send the information typed in by user to the page
password_box.send_keys(password)
  

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

Если вы хотите ввести его непосредственно на странице, вы также можете сделать это, просто добавив a time.sleep(10) , чтобы сообщить вашей программе приостановиться на 10 секунд, пока вы вводите свою информацию.

Если ваш скрипт не работает, я очень сомневаюсь, что это была ошибка, с которой вы столкнулись. Попробуйте поделиться некоторым кодом, с которым у вас возникли проблемы, чтобы мы могли помочь.