1. 前期准备:
需要用隐身窗口打开网页,因为若是之前登陆过此页面,那么再次登陆,就会直接读取本地的cookie数据,即用GET方法,此时无法获取得到POST方法传递的数据.
2. 利用浏览器解析数据
若是Chrome浏览器,可以直接利用F12打开开发者工具,获取POST方法传递的数据。具体数据如下图展示:
获取URL
3. 实现代码
import urllib.requestas request
importurllib.parse as parse
importurllib.error as error
importhttp.cookiejar
data = {}
data['username']= 'username'
data['password']= 'password'
data['lt']= 'XXXXX'
data['execution']= 'xxxxx'
data['_eventId']= 'submit'
url_values= parse.urlencode(data)
binary_data= url_values.encode('UTF-8')
url_path= 'url'
print("url:"+ url_values)
reponse =request.urlopen(url_path, data=binary_data)
print(reponse.read())
# htmlDat= getHtml(" http://bbs.youkuaiyun.com/callmewhy")
# htmlDat= getHtml("http://rrurl.cn/b1UZuP")
#print(htmlDat)
# getcookie data
# cookie=http.cookiejar.CookieJar()
# opener= request.build_opener(request.HTTPCookieProcessor(cookie))
#response = opener.open("http://www.baidu.com")
# foritem in cookie:
# print('Name=' + item.name)
# print('Value='+ item.value)