Мне нужно, чтобы Mechanize поместил определенную строку в каждое редактируемое поле ввода в выбранном из.Вот пример HTML-кода:
<form action = "http://localhost/whatever.php" method = "post">
<input type = "hidden" name = "dummy" value = "12345">
<input type = "text" name = "msg"> <br/>
<input type = "text" name = "name"> <br/>
<input type = "submit" value = "Send">
</form>
Поскольку мой скрипт на Python было бы очень утомительно переписывать на каждом веб-сайте и стал бы очень зависимым от веб-сайта, я хочу, чтобы он выбрал все редактируемые поля ввода(без редактирования скрытых или отключенных полей) в выбранной форме и установите значение каждого поля ввода в определенную строку.Тем не менее, я не буду знать имена каждого элемента ввода.Так есть ли способ, которым я могу выбрать элемент ввода по его номеру индекса?Мой код выглядит примерно так:
import mechanize
browser = mechanize.Browser()
url = raw_input("Enter web address: ")
browser.open(url)
browser.select_form(nr=0)
# I know the index number of the form or my Python code will find out which it is
# but I do not know the names of the input elements within this form
И в этот момент я хотел бы сделать что-то вроде этого: выяснить, сколько существует редактируемых элементов ввода, и выбрать каждый из них с помощью установки номера индексаэто к значению.Так можно ли это сделать?Мне просто нужен автоматический способ выбора полей ввода и установки их значения без знания их имени или идентификатора.Можно ли выбрать его по его порядковому номеру, например, так:
browser.input_elements[1] = "whatever"
В каком случае в Mechanize есть список или последовательность, содержащие элементы ввода и значения, чтобы я мог их редактировать?