Как я могу запросить ввод с помощью Selenium / Webdriver и использовать результат?

Я хотел бы разрешить ввод данных пользователем и принимать на его основе некоторые решения. Если я сделаю это:

driver.execute_script("prompt('Enter smth','smth')")

Я получаю красивую подсказку, но не могу использовать ее значение. Есть ли способ показать пользователю поле ввода и использовать введенное там значение?

РЕДАКТИРОВАТЬ: Это мой сценарий:

from selenium.webdriver import Firefox

if __name__ == "__main__":
    driver = Firefox()
    driver.execute_script("window.promptResponse=prompt('Enter smth','smth')")
    a = driver.execute_script("var win = this.browserbot.getUserWindow(); return win.promptResponse")
    print "got back %s" % a

И это завершается со следующим исключением:

    a = driver.execute_script("var win = this.browserbot.getUserWindow(); return win.promptResponse")
  File "c:\python26\lib\site-packages\selenium-2.12.1-py2.6.egg\selenium\webdriver\remote\webdriver.py", line 385, in ex
ecute_script
    {'script': script, 'args':converted_args})['value']
  File "c:\python26\lib\site-packages\selenium-2.12.1-py2.6.egg\selenium\webdriver\remote\webdriver.py", line 153, in ex
ecute
    self.error_handler.check_response(response)
  File "c:\python26\lib\site-packages\selenium-2.12.1-py2.6.egg\selenium\webdriver\remote\errorhandler.py", line 110, in
 check_response
    if 'message' in value:
TypeError: argument of type 'NoneType' is not iterable

Что я делаю неправильно ?

РЕДАКТИРОВАТЬ: Я попытался сделать то, что предлагал престоманифест, вот результат:

In [1]: from selenium.webdriver import Firefox

In [2]: f = Firefox()

In [3]: a = f.ex
f.execute              f.execute_async_script f.execute_script

In [3]: a = f.execute_script("return prompt('Enter smth','smth')")

In [4]: a
Out[4]: {u'text': u'Enter smth'}

In [5]: a
Out[5]: {u'text': u'Enter smth'}

In [6]: class(a)
  File "<ipython-input-6-2d2ff4f61612>", line 1
    class(a)
         ^
SyntaxError: invalid syntax


In [7]: type(a)
Out[7]: dict
7
задан supputuri 18 May 2019 в 02:54
поделиться