咱们经过前面的两个实例讲解了爬虫的简单应用,可是在不少网站中,你将会发现你写的全部代码都没有用
由于你没有登陆
登陆网站是一种很常见的行为,就拿百度贴吧来讲,你须要先登陆才能发贴回帖签到什么的,因此在不少的状况下,登陆是爬取网页的前提
我也试过用前面的代码去爬取一个须要登陆的网站,结果大部分是返回登陆界面的网页源码,因此这就有必要在爬取网页以前作模拟登陆的操做
模拟登陆这一部分相对来讲难度要大不少,我也上网查了不少资料,可是不少的代码要么是年代过于久远,要么是网页源码重写登陆机制已经改变,或者是各类须要验证码才能登录的状况,反正几乎没有可以运行成功的代码,因此在这上面也耗费了不少时间,最主要的问题是找不到一个合适的网站,一段合适的代码进行模拟登陆的实例分析,若是一开始就要面对复杂的验证码机制的话,难度会较大,并且本人是新手现学现卖,也不是很懂,因此仍是想着用一个按部就班的过程来慢慢学习。
在这期间我也加入了一些论坛,QQ群等等,遇到好多跟我碰到相同问题的新手,也有好多乐于解答和帮忙的高手,可是最终发现,或者是我的的理解不相同,或者是技术层面不同,不多能获得想要的答案,最终仍是要靠本身慢慢的摸索
如今把这个过程当中遇到的一些问题记录一下
1. 首先要具有必定的网页基础知识,包括cookies,post是什么等等
2. 弄清楚网站登陆的整个过程是怎么样的
3. 怎么使用浏览器或者使用工具分析登陆过程当中网页和服务器进行了什么数据交互
4. 怎么在代码中模拟出网页登陆的效果,包括须要什么数据,这些数据怎么找到等等
由于最近精力实在有限,不少的知识不能再慢慢的去看,为了提升效率,如今将这一部分的思路整理以下:
1. 网站登陆的流程是什么
2. cookies是什么
(实例:可否直接用现有的cookies实现登陆)
3. 如何使用浏览器查看数据交互
(实例:登陆公司的OA系统)
4. 如何应对复杂的验证码机制
(实例:找一个须要验证码登陆的网站)
如 果能顺利的把这一部分作完,那么爬虫的基础篇应该也就是这么多了,接下来应该是学习另一些库的使用,学习新的框架,多线程爬虫,分布式爬虫等等,而后爬虫就应该结束,转到学习python创建网站,flask,djange框架等等,最后再作一些图形化界面的学习,wxpython,pygtk,pyqt,而后再回事数据结构数据分析等等
还有很长的一段路要走,不知道能走到哪里,尽力而为!!!!
python