文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

python + fiddler抓包测试

2023-01-31 07:35

关注

有个坑的选修课,要提交一个项目。我们小队不知道做什么,于是在讨论了一分钟后决定用python来写一个抓取学生成绩的app和分析(交完之后才上课,发现那老师基本全是搞硬件的,我瞬间没有要上课的想法了)。

不管怎么样,学分还是要拿的。

早写了个登陆界面。测试了下信息的输入,没有出错。

接下来写模拟登陆。昨天用chrome抓了半天的包,就是找不到我的postdata哪出错了。

今天用fiddler2代理python,断点分析才发现原来post的地址不应该是显示表格的地址。

改了一下。成功模拟登陆,试了一下抓取课表,success!

fiddler的代理地址为127.0.0.1:8888。

用ProxyHandler处理一下fiddler的代理地址,然后绑定到opener里。

然后就可以用fiddler监听到python的网络访问,设置断点,就可以方便地查看和修改发送和接收的包了。


import urllib2
import urllib
cookies = urllib2.HTTPCookieProcessor()
print 'UserNO:'
UserNo = raw_input()
print 'PassWord:'
Passw = raw_input()

headers = {'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8','Accept-Encoding': 'gzip,deflate,sdch','Accept-Language': 'zh-CN,zh;q=0.8,en;q=0.6,zh-TW;q=0.4','User-Agent': 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.146 Safari/537.36'}
url = 'http://jw.hrbeu.edu.cn/ACTIONLOGON.APPPROCESS?mode=3'
url2 = 'http://jw.hrbeu.edu.cn/ACTIONLOGON.APPPROCESS?mode=4'
kebiaourl = 'http://jw.hrbeu.edu.cn/ACTIONQUERYELECTIVERESULTBYSTUDENT.APPPROCESS?mode=1'
#用fiddler分析
#proxy = urllib2.ProxyHandler({'http':'127.0.0.1:8888'})
#wopen = urllib2.build_opener(cookies,proxy)
wopen = urllib2.build_opener(cookies)
request = urllib2.Request(url = url,headers = headers)
path = r"./agnomen.jpg"
f=file(path,'wb')
imageurl = 'http://jw.hrbeu.edu.cn/ACTIONVALIDATERANDOMPICTURE.APPPROCESS'
imrequest = urllib2.Request(url = imageurl,headers = headers)
response = wopen.open(imrequest)
f.write(response.read())
f.close()
data={'submit.x': '0', 'WebUserNO': '', 'Agnomen': '', 'Password': '', 'submit.y': '0'}
data['WebUserNO'] = UserNo
data['Password'] = Passw
print 'Agnomen:'
agnom = raw_input()
data['Agnomen']=agnom
request = urllib2.Request(url = url2, data = urllib.urlencode(data),headers = headers)
wopen.open(request)
request = urllib2.Request(url = kebiaourl, headers = headers)
response = response = wopen.open(request)
htmlpath = r"./index.html"
f=file(htmlpath,'wb')
f.write(response.read())
f.close()



阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯