Как я могу нажать Enter, используя Splinter?
Вот мой код Splinter -
b = Browser()
b.visit("http://boingboing.net")
b.fill("q", "OpenXC")
На этом этапе я бы хотел нажать "Enter" для поиска.
Это очень похоже на пример на странице учебника Splinter. В этом случае действительно нет никакого элемента кнопки.
Я вижу, что это поле поиска является окном поиска Google с идентификатором "cse-search-box". Я не знаю, как вызвать поиск здесь.
Можете ли вы помочь?
Код Metaphy (спасибо, кстати), приведенный ниже, создает для меня обратную связь -
Traceback (последний вызов был последним): файл "/Users/muthu/Desktop/boing.py", строка 5, в b.execute_script ('document.getElementsByName ("f") [0].submit ()') File " /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/splinter/driver/webdriver/init.py ", строка 58, в файле execute_script self.driver.execute_script(script) (execute)" / Библиотека / Каркасы / Python.framework / Версии /2.7/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py", строка 397, в execute_script {'script': script, 'args':convert_args})['value'] Файл "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py", строка 165, в файле self.error_handler.check_response(response) Файл "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/selenium/webdriver/remote/errorhandler.py", строка 158, в check_response повышает исключение_класса (сообщение, экран, трассировка стека) WebDriverException: сообщение: ошибка загрузки. '; Stacktrace: at r (файл:///var/folders/5r/06jrtyyn2kd8ty05m71lm0hr0000gn/T/tmpBFCIVe/extensions/fxdriver@googlecode.com/components/driver_component.js:8360) по адресу fxdriver.Timer.Wru (тип файла):///var/folders/5r/06jrtyyn2kd8ty05m71lm0hr0000gn/T/tmpBFCIVe/extensions/fxdriver@googlecode.com/components/driver_component.js:392) в fxdriver.Timer.prototype.setTimeout// no. var/folders/5r/06jrtyyn2kd8ty05m71lm0hr0000gn/T/tmpBFCIVe/extensions/fxdriver@googlecode.com/components/driver_component.js: 386)
1 ответ
Я не могу получить доступ к сайту http://boingboing.net/, поэтому я беру baidu.com, например:
from splinter.browser import Browser
b = Browser('firefox')
b.visit('http://www.baidu.com')
b.fill('wd', 'test')
b.execute_script('document.getElementsByName("f")[0].submit()')
Новый ответ:
browser.fill('some_name', 'some_value\r')