我希望能够在站点上查询运行该脚本的计算机的保修信息。如果需要,它应该能够填写表格(例如惠普服务站点的情况),然后能够检索生成的网页。
我已经准备好解析返回的结果 html 我只是遇到了麻烦,需要做什么才能对需要放入字段中的数据进行 POST,然后能够检索结果页面。
如果你绝对need使用 urllib2 的基本要点是:
import urllib
import urllib2
url = 'http://whatever.foo/form.html'
form_data = {'field1': 'value1', 'field2': 'value2'}
params = urllib.urlencode(form_data)
response = urllib2.urlopen(url, params)
data = response.read()
如果您发送 POST 数据(第二个参数urlopen()
),请求方法自动设置为POST。
我建议你帮自己一个忙并使用机械化,一个成熟的 urllib2 替代品,其行为与真正的浏览器完全相同。许多网站使用隐藏字段、cookie 和重定向,默认情况下 urllib2 不会为您处理这些内容,而 mechanize 会处理这些内容。
查看使用 mechanize 在 Python 中模拟浏览器一个很好的例子。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)