1.为什么爬虫需要了解加密算法?
网站通常在以下两种情况,会对数据进行加密:
(1)保护用户传输的信息安全,以防被截取。比如说登录时,我们的账号和密码数据信息。
(2)验证是否是真实的用户,反爬虫。比如验证码,滑动拼图验证等机制。
所以当我们爬虫为了抓取数据时,要想成功的模仿网站的请求,就必须模仿网站正常访问时的加密行为。
2.Python的加密库
PyCrypto是Python中密码学方面最有名的第三方软件包。可惜的是,它的开发工作于年就已停止。
幸运的是,有一个该项目的分支PyCrytodome取代了PyCrypto。
(1)在Linux上安装
可以使用pip命令:pipinstallpycryptodome
导入:importCrypto
(2)在Windows系统上安装,略有不同。
Windows安装之前需要先安装MicrosoftVisualc++。(大多数的系统都已自动更新,无需安装)
下面以用户较多的win7为例进行说明。
Step1.打开控制面板(查看方式为类别)--程序和功能,检查是否安装MicrosoftVisualc++。
控制面板程序和功能Step2.如果已安装MicrosoftVisualc++,则可以在控制面板中看到。
如果没有安装,我们可以在