学校信息门户模拟登录
将登陆学校信息门户的部分专门封装成一个模块,需要的时候导入。
将登陆学校信息门户的部分专门封装成一个模块,需要的时候导入。
以前写的爬虫无法登录到学校的信息门户上去了,因为门户的新 JS 代码将表单的密码先加密了一次,再将其与别的表单数据 POST 过去。使用的是 AES 加密的 CBC 模式。
本文前半部分是我的 python 组长雁横给组员们讲解的信息门户的密码加密思路,然后由我总结成文,后半部分是我自己写的加密代码实现,使用 python 的PyCryptodome
库来进行加密。
尝试使用 python 的configparser
来读取ini
配置文件,但是遇到了No Section
的错误。
最终发现其实是路径出了问题。
在学习 scrapy 时,保存数据到文件的时候,发现一直出现“找不到这样的文件或文件夹”的错误,最后发现是因为 python 的相对路径。
开始学 python 的 Scrapy 框架了,参考书是崔庆才的《python3 网络爬虫开发实战》
跟着示例敲完之后,又试着按照一样的逻辑去爬取了 B 站排行榜的数据。
通过这个小项目学习使用 Scrapy 框架。
打算全部以 cookie 来登陆,而不依赖于 session(因为听组长说 session 没 cookie 快,而且我想学些新东西而不是翻来覆去地在舒适区鼓捣)。弄了几天终于弄出来个代码不那么混乱的爬虫类了,更新一下博文来总结一下。代码在我 github 的 spider 库里面。
前面写的代码虽然完成了爬取的功能,但是过于凌乱,于是打算重构一遍。首先从登陆开始
为了加入学校里面一个技术小组,我接受了写一个爬取学校网站通知公告的任务。这个任务比以前写的爬虫更难的地方在于,需要模拟登录才能获得页面,以及将得到的数据存入数据库。
本文按照日期来记录我完成任务的过程,然后再整理一遍全部代码。读者可以通过侧栏目录跳转阅读。不介绍库的安装。
传送门:爬虫学习笔记 1
学了 python 语法之后在 b 站搜索练手的小项目,发现了这个视频:Python 实用练手小项目(超简单)
视频里面讲解了一个爬取图片网站图片的小爬虫。后面用到了我还没学的数据库,不过前面的部分是已经学了的,于是我就打算写一个不用数据库的,爬取某个盗版小说内容的爬虫。
声明:本人不会将得到的小说内容作任何商业用途,也请阅读此文章的各位读者遵纪守法,此文章只用作学习交流,原创内容,转载请注明出处。