我想点击一个带有python的按钮,表格的信息会自动填入网页。用于向按钮发送请求的HTML代码是:
INPUT type="submit" value="Place a Bid">
我该怎么做呢? 是否可以单击urllib或urllib2按钮?或者我需要使用机械或斜纹等东西吗?
答案 0 :(得分:10)
使用表单目标并将任何输入作为发布数据发送,如下所示:
<form target="http://mysite.com/blah.php" method="GET">
......
......
......
<input type="text" name="in1" value="abc">
<INPUT type="submit" value="Place a Bid">
</form>
的Python:
# parse the page HTML with the form to get the form target and any input names and values... (except for a submit and reset button)
# You can use XML.dom.minidom or htmlparser
# form_target gets parsed into "http://mysite.com/blah.php"
# input1_name gets parsed into "in1"
# input1_value gets parsed into "abc"
form_url = form_target + "?" + input1_name + "=" + input1_value
# form_url value is "http://mysite.com/blah.php?in1=abc"
# Then open the new URL which is the same as clicking the submit button
s = urllib2.urlopen(form_url)
您可以使用HTMLParser
解析HTML不要忘记使用以下方法对任何帖子数据进行urlencode编码:
答案 1 :(得分:2)
您可能需要查看IronWatin - https://github.com/rtyler/IronWatin以填写表单并使用代码“点击”按钮。
答案 2 :(得分:1)
使用urllib.urlopen,您可以将表单的值作为数据参数发送到表单标记中指定的页面。但这不会为您自动化浏览器,因此您必须首先以其他方式获取表单值。