Как выполнить функцию Javascript в python с селеном

У меня есть функция, называемая «checkdata (code)» в javascript, которая, как вы можете видеть, принимает аргумент «код» для запуска и возвращает строку с 15 символами.

Итак, я узнал (и протестировал), как вызвать функции без аргументов в javascript, но моя проблема в том, что когда я вызываю checkdata (код), я всегда получаю возвращаемое значение «none». Это то, что я делаю до сих пор:

wd = webdriver.Firefox() wd.get('My Webpage') a = wd.execute_script("return checkdata()", code) //Code is a local variable //from my python script print a 

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

Но, как я уже говорил, я просто не печатаю.

Как я могу вызвать функцию, передающую этот параметр?

2 Solutions collect form web for “Как выполнить функцию Javascript в python с селеном”

Построить строку

 a = wd.execute_script("return checkdata('" + code + "');") 

Вместо того, чтобы строить строку (это означает, что вам нужно будет сбежать из ваших котировок должным образом), попробуйте следующее:

 a = wd.execute_script("return checkdata(arguments[0])", code) 
  • Управление вкладками firefox в селене
  • Надежное обнаружение загрузки страницы или тайм-аута, Selenium 2
  • Прокрутка в Selenium Webdriver (Python)
  • Как использовать Selenium с Python?
  • Ошибка «Недопустимые значения локатора, переданные в», если мы используем find_element вместо find_element_by
  • python selenium 3.0 - Firefox 47.0.1, установленный по умолчанию, не определен. (geckodriver)
  • Отключение Javascript после того, как страница была отображена в Selenium Webdriver
  • Python Selenium, как подождать, прежде чем нажимать на ссылку
  • Как имитировать HTML5 Drag and Drop в Selenium Webdriver?
  • Python Selenium Webdriver, чтобы проверить, не существует ли элемент, требуется время
  • получить имена динамических фреймов w / Selenium WebDriver и Python?
  • Python - лучший язык программирования в мире.