| |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| -> 网络协议 -> Python 爬虫实现 登录教务系统爬取成绩单 -> 正文阅读 |
|
|
[网络协议]Python 爬虫实现 登录教务系统爬取成绩单 |
|
距离我的python课也结束很久了,今天突发奇想用Python来登录学校的教务系统来搞点事情。 说干就干,首先第一步打开我们的教务系统:
为了保护隐私,所以马赛克打的有点重,别见怪😀😀 打开浏览器的开发者模式中的network抓包,这里笔者用的是火狐浏览器。 随便填写个用户名和密码提交看看结果。
?在这里我们能够发现,在输入了用户名和密码后点击提交,会发送一个文件名为login.action的post申请。 分析里面的请求,发现我们输入的原始密码和用户名没有经过任何加密就直接发送出去了,😅难怪不得平时都说教务系统是土豆服务器。 那么接下来我们就立马开始着手Python代码的书写。
?准备工作完成后,点击运行,看看是否成功进入教务系统
?oh!my god!看起来我们并没有成功进入教务系统,怎么会事呢? 这个时候返回去,检查我们的request语句
?🤔是不是我们的语句还缺少什么呢?只有我们给网站发请求,它不给我们分点东西是不是很可惜呢? 没错,我们的语句中还缺少了网站给的缓存cookie。进入教务系统,我们不仅要有正确的用户名和密码,还得有分配的合法身份! ?那么,如何获取分配的cookie呢?事实上,在每次进入教务系统网站的时候,都会自动给我们分配一个cookie,我们所作的只要把cookie保存下来,以后每次行动都使用他就行了。
?编写get_cookie函数,并把他加到程序最前面,后面每一次发送请求都使用第一次的cookie
哈哈,好尴尬,才发现password前面没有user,我就说怎么调试不成功。 好了,言归正传,所有准备工作都已经做好,现在我们开始实验吧!
?🙌实验成功,顺利进入教务系统主页! 进入教务系统后,我们点击成绩查询,查看自己的所有学期绩点,打开浏览器开发者们模式抓包,我们会得到以下信息
?从消息头中得到接受我们请求的源网站,实现这一行动,我们只需要在python中向这个网址发送post请求就可以了。
?最后呢,获取页面的所有txt,用BeautifulSoup美化后写入本地文件保存
?至此为止,工程结束,希望我的博客能对你的python学习起到帮助 ? ? ? |
|
|
| 网络协议 最新文章 |
| 使用Easyswoole 搭建简单的Websoket服务 |
| 常见的数据通信方式有哪些? |
| Openssl 1024bit RSA算法---公私钥获取和处 |
| HTTPS协议的密钥交换流程 |
| 《小白WEB安全入门》03. 漏洞篇 |
| HttpRunner4.x 安装与使用 |
| 2021-07-04 |
| 手写RPC学习笔记 |
| K8S高可用版本部署 |
| mySQL计算IP地址范围 |
|
|
| 上一篇文章 下一篇文章 查看所有文章 |
|
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
| 360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年11日历 | -2025/11/29 19:40:45- |
|
| 网站联系: qq:121756557 email:121756557@qq.com IT数码 |