python爬虫基础(15:补录环境安装)

1. 环境安装

由于每个人的硬件设备、操作系统和使用习惯的不同,再加上环境安装的过程中特别多的不可控因素以及可能性,我觉得编写每个软件或模块的安装方法十分耗费心力,因此一直没有给出环境安装方法,在此抱歉

在学习过程中参考了崔庆才的《Python3网络爬虫开发实战教程》,其中作者耗费心血地写了关于环境的安装,在此就厚着脸贴出链接了:https://cuiqingcai.com/5052.html

转载请注明:静觅 » Python3网络爬虫开发实战教程

2.解析方法

除了我案例中一直使用的BeautifulSoup以外,还有xpath、pyquery等很好用的工具,应根据不同的网页结构选用对应的解析提取工具,如果遇到实在难以提取的,再考虑正则,因为一般正则很难写

3.数据库

案例一直选用mysql这种关系型数据库,但现在的趋势是非关系型数据库例如MongolD,或轻量高效的Redis,实际开发者也应根据需求选用

4.模拟登陆

模拟登录部分由于没有找到好的案例,所以最后没有演示怎么破解加密,因为再生成加密信息的过程中一直没有链接后台,所以加密方法一定是再前端里面,需要研究js加密函数和进行很多猜测尝试,还是很有可能破解的,如果实在无法破解,那就只好使用selenium来模仿人输入账户密码进行登录了

账号池:有些网站监测到一个 IP 多此快速访问可能会封 IP ,所以需要 IP 代理池, 而有些网站(例如知乎)检测到一个账号进行非常规访问,就会封账号,所以我们在爬虫过程中,可以向搭建 IP 代理池一样搭建一个账号代理池,这样多个账号轮流随机访问,就可以一定程度上避免被封账号,由于我没有找到合适的项目和许多的账号,所以没有做这个,也是个遗憾

5.验证识别

除了我写过的简单图片码识别和滑块识别外,还有很多识别,但目前最主流的还是滑块识别,这里给出其他识别方法的解决思路

图片识别:例如12306    可以将图片下载后输入到在线识别工具网站(例如最有名的超级鹰),然后得到识别结果,再进行破解,超级鹰的识别率还是蛮高的

滑动识别:例如微博宫格滑动验证,可以先准备好许多的验证模块,然后根据箭头的信息对比,找到对应的模块,然后就可以进行模拟滑动破解了

此外还有短信验证和电话验证,暂时没有想到好方法

6.app爬取

之前我们抓取app数据时,需要手动点击和滑动手机屏幕来进行网络请求,实际上可以利用工具 appium 来自动进行,appium就如同 selenium 一样,都是用工具来模拟人的操作,这样的话就可以全程都是程序自动的爬取数据,不需要人的操作了

7.爬虫日志

面对大型的爬虫项目,需要进行日志记录,python提供了log模块

8.Scrapy的功能

Scrapy作为爬虫最著名的框架,功能十分强大,为了方便入门,我只演示过简单的流程,希望有机会能找个好的案例来进行介绍

你可能感兴趣的:(python爬虫,Python爬虫基础)