Python爬虫初学(4)登陆武汉理工大学教务处并转到成绩管理

cookie的问题捣鼓了好久,本来以为要用正则提取JSESSIONID跟Referer,

后来发现模拟点击成绩管理的按钮(就是链接啦)cookie会自己更新的。

但是问题又来了,测试的时候有时是可以进去到成绩目录,有时候似乎只什么都不显示,

可能是网速的问题,但是觉得cookie也有问题。


先贴代码



import urllib.parse,urllib.request,http.cookiejar,os
#by:Nonikka   2014.3.30 
cookie = http.cookiejar.CookieJar() 
cookieProc = urllib.request.HTTPCookieProcessor(cookie) 
opener = urllib.request.build_opener(cookieProc) 
urllib.request.install_opener(opener) 
#http://sso.jwc.whut.edu.cn/Certification/login.do


name = input("输入学号")

postdata=urllib.parse.urlencode({
    'systemId':'',
    'xmlmsg':'',
    'userName':name,
    'password':name,
    'type':'xs',
	'imageField.x':'60',
	'imageField.y':'19'
}).encode(encoding='UTF8')

headers = {
    'User-Agent':'Mozilla/5.0 (Windows NT 6.3; WOW64; rv:28.0) Gecko/20100101 Firefox/28.0',
	'Host':'sso.jwc.whut.edu.cn',
	'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
	'Referer':'http://sso.jwc.whut.edu.cn/Certification/toLogin.do',
	'Cookie':'',
	'Connection':'keep=alive'
}

req = urllib.request.Request(
    url = 'http://sso.jwc.whut.edu.cn/Certification/login.do',#这个是教务处登陆网址
    data = postdata,
    headers = headers
)

result = urllib.request.urlopen(req).read().decode("utf-8")
print(result)
os.system('pause')

#模拟点击,更新cookie
scorep = urllib.request.urlopen('http://202.114.90.180/Score/').read().decode("utf-8") #这个网址就是成绩管理

print(scorep)         #经常不显示                          

os.system('pause')

lishiscore = urllib.request.urlopen('http://202.114.90.180/Score/lscjList.do').read().decode("utf-8")    #成绩显示页面
print(lishiscore)     #经常不显示   

os.system('pause')

求指导啊,自学挺有意思但是也经常“走投无路”。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值