Python robobrowser get_form не получает всю форму

Я использую robobrowser для автоматизации поиска на сайте. Мне нужно заполнить два поля ввода, но robobrowser.get_form выбирает только первый вход. Любые идеи о том, как получить полную форму и присвоить значение для второго ввода?

HTML:

<form name="form1" method=post action="/sundown/cart_prod/cart_con_r2trastrep2">
<h5 align= "center"><font face_"verdana,arial, helvetica, sans-serif" size="4">Enter The Report Date(MM/YYYY): 
<input type="text" Name="p_r2reportdate" size="6" maxlength="7">
</font></p>
<h5 align= "center"><font face_"verdana,arial, helvetica, sans-serif" size="4">Enter The Transporter ID: 
<input type="text" name="p_r2trans_id" size="6" maxlength="7">
</font></p>
<input type="submit" >
</font></p>
  </form>

Скрипт Python:

import re 
from robobrowser import RoboBrowser 
sonris = 'http://sonlite.dnr.state.la.us/sundown/cart_prod/CART_CON_r2trastrep1'
former1 = "p_r2reportdate"
former2 = "p_r2trans_id"
date = '01/2016'
code = '7250' #capline
browser = RoboBrowser(history=True,parser='html.parser') 
browser.open(sonris)
form = browser.get_form(action="/sundown/cart_prod/cart_con_r2trastrep2")
print(form) #<RoboForm p_r2reportdate=>
form[former1].value = date
form[former2].value = code
browser.submit_form(form)
print(str(browser.parsed))

1 ответ

Единственная причина, по которой я вижу, что второй параметр имеет атрибут name в нижнем регистре "name", а не "Name" для более раннего. Поэтому я предлагаю, если вы можете исправить источник, сделайте это, иначе получите поле ввода из формы, используя другой атрибут, а затем установите его значение.

Другие вопросы по тегам