Python的组合框和HTTP POST选择一个值
-
12-09-2019 - |
题
在Python中,我试图在 http://utahcritseries.com/RawResults.aspx读出的值。我怎样才能阅读于2002年的默认?
其他年份到目前为止,采用机械化,我已经能够引用SELECT并列出所有可用的选项/值的,但我不知道该如何改变其值,然后重新提交表单。
我敢肯定,这是一个常见的问题,它是常见的,但我不知道我应该甚至可以寻找。
解决方案
因此,如何这样:
from mechanize import Browser
year="2005"
br=Browser()
br.open("http://utahcritseries.com/RawResults.aspx")
br.select_form(name="aspnetForm")
control=br.form.find_control("ctl00$ContentPlaceHolder1$ddlSeries")
control.set_value_by_label((year,))
response2=br.submit()
print response2.read()
其他提示
使用有关的网页AJAX加载问题,请使用萤火虫!
安装并打开Firebug(这是一个Firefox插件),转到网络页面,并确保“所有”被选中。打开URL并更改选择框,看看被发送到服务器,并且在接收什么。
看来catchily名为场ctl00$ContentPlaceHolder1$ddlSeries
就是负责..没有了以下工作..?
import urllib
postdata = {'ctl00$ContentPlaceHolder1$ddlSeries': 9}
src = urllib.urlopen(
"http://utahcritseries.com/RawResults.aspx",
data = urllib.urlencode(postdata)
).read()
print src
不隶属于 StackOverflow