这个作业属于哪个课程 | 至诚软工实践F班 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/fzzcxy/ZhichengSoftengineeringPracticeFclass/homework/12532 |
这个作业的目标 | <学习Fiddler抓包与python使用> |
学号 | <212106755> |
仓库地址:https://github.com/yangxiaochen123/work02
-
解题思路
一开始是不知道如何去实现本次实验的,然后通过查找许多资料与视频得以实现,那么本次个人认为比较好用的资料如下:
关于Fiddler的学习渠道:https://www.bilibili.com/video/BV1cr4y1T7rL?spm_id_from=333.1007.top_right_bar_window_history.content.click
https://www.cnblogs.com/wulixia/p/12059716.html
python中json与time库学习渠道:https://blog.csdn.net/whjkm/article/details/81159888
-
设计实现过程。
1、首先通过Fiddler抓包,软件安装后,注意要安装证书。左上角Tools—Options
2、因为发现朴朴没有网页版,于是为了方便,使用微信小程序朴朴来抓包
选中所抓取的链接,右键Copy—Just Url,可复制到所需地址。
Fiddler抓取的接口地址:
这个地址里有我们所需要的东西
这个是HTTP请求头
3、通过python来获取数据,代码如下:
如果在运行程序时,如果Fiddler也还在运行,那么respnse = requests.get(url, headers=head,verify=False)这里的verify=False就需要有,反之可不用
4、运行结果
-
有关此次实验中遇到的种种问题做一个总结
1、一开始使用的是2019年的pycharm,应该是版本太低,requests里没有所需要的东西后来重新下载安装了最新社区版的pycharm与解释器,这个问题得到解决。
2、需要添加requests包,左上角File—Setting—Project:pythonProject—Python Interpreter
3、requests.exceptions.InvalidHeader: Invalid return character or leading space in header: user-agent错误
在复制过来的请求头里,冒号后面不能有空格,需要把空格删了
4、AttributeError: 'set' object has no attribute 'items'
请求头是键值对,需要加引号 header={“key”:“value”}
5、Error--requests.exceptions.ProxyError
这是找了最久的问题,使用微信小程序,需要把电脑的个人代理关掉,否则会出现pycharm运行程序后一直在计算中,很长时间都计算不出结果,到最后就会报这个错误
-
Git提交
Git提交远程库教程:https://www.liaoxuefeng.com/wiki/896043488029600/898732864121440