2015-11-20 3 views
0
</form></table> 
<br> 
<table><tr><th>Login With Password: 
    <tr><td class=w><form method=POST action="/do_login"> 
     User Name: <input name="name" type="text"> 
     &nbsp; Password: <input name="password" type="password"> 
     <input type="submit" value="Login"> 
     <input name="redirect" type="hidden" value=""> 
</form></table> 

Я хотел бы также опубликовать скрытое поле, в котором выполняется вход в систему, и селен позволяет мне использовать функцию send_key только с включенным и отображаемым полем.Python SELENIUM issue

Не публикуя входное скрытое значение для входа в систему, он не войдет в систему, я смог сделать это с модулем запросов с параметром data в функции request.post(), но Id понравится ему с селеном .i нужно выкладываю «перенаправить», а также ... он является обязательным для подписания в ... пожалуйста, помогите вот код ...

driver.find_element_by_name("name").send_keys("hhhhh") 
driver.find_element_by_name("password").send_keys("hhhh") 
driver.find_element_by_xpath("//input[@type='submit']").submit() 
+0

Вы можете записать то, что вы делали до сих пор? – Abhinav

+0

В каком смысле? Извините, я не понимаю, что вы имели в виду под этим ... – samlexxy

+0

Как я вижу, в тот момент, когда вы отправляете форму, это будет POST все, что находится между «

», поэтому не имеет смысла не является. Вы пробовали написать код селена, чтобы проверить, какую ошибку он вам дает? – Abhinav

ответ

0

Вы можете попробовать изменения значения атрибута тега от "hidden" до "text", выполнив скрипт в браузере через execute_script(), а затем используйте send_keys().

s = "something" 
driver.execute_script("document.getElementsByName('redirect')[0].setAttribute('type', 'text');") 
driver.find_element_by_name("redirect").send_keys(s) 

Или вы можете просто ввести свои данные в тег следующим скриптом:

driver.execute_script("document.getElementsByName('redirect')[0].value = '" + s + "';") 
+0

спасибо ... проверил бы его – samlexxy

+0

@samlexxy - Конечно, дайте мне знать, если вы все еще сталкиваетесь с проблемой. Если ответ поможет, прими его с зеленым тиком. :) – JRodDynamite