Как получить Int из JS Prompt, используя Selenium в Python - PullRequest
0 голосов
/ 03 ноября 2019

Я пытаюсь создать приглашение для номера от пользователя на веб-странице при использовании селена в python.

Это код, который я написал, но он возвращает None

driver = webdriver.Chrome()
driver.get('https://www.google.com')

input_number = driver.execute_script('return parseInt(prompt("Enter a number", 20));')

print(input_number)

1 Ответ

1 голос
/ 04 ноября 2019

Итак, я разобрался с ответом на мой вопрос.

Вот код для тех, у кого может быть такая же проблема:

from selenium.common.exceptions import UnexpectedAlertPresentException

driver = webdriver.Chrome()
driver.get('https://www.google.com')

while True:
    try:
        driver.execute_script("var a = prompt('Enter a number');document.body.setAttribute('user-manual-input', a)")
        sleep(10)  # must 
        print(driver.find_element_by_tag_name('body').get_attribute('user-manual-input')) # get the text
        break

     except (UnexpectedAlertPresentException):
        pass
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...