python 爬虫系列教程方法总结及推荐

爬虫,是我学习的比较多的,也是比较了解的。打算写一个系列教程,网上搜罗一下,感觉别人写的已经很好了,我没必要重复造轮子了。

爬虫不过就是访问一个页面然后用一些匹配方式把自己需要的东西摘出来。

而访问页面经常用到的几个库,一是urllib和urllib2结合使用,二是requests的使用。第一种方法可以让你了解http协议的一些原理,对于初学者应该从这个入手,但是所谓显得麻烦,第二种requests比较方便,但是由于它是对其他库(httplib等)的高级封装,所以灵活性会差点,功能稍微差点,但一般的效果几乎都可以达到。

访问页面会得到页面的源码,我们的爬虫最大的挑战是从源码里找到我们需要的东西。这个过程也是有几种方法的,但是基本原则就是先抓大再抓小。简单介绍几种匹配方法,第一就是正则表达式了,这个方法有什么好处呢,我能想到的只有一个好处,就是可以提高我们正则匹配能力,因为正则表达式用途很广,而下面说的两种方法用途就只是做爬虫才会用到,所以还是那句话,对于初学者,先从做个方法着手,等自己对正则表达式理解的很好了,再去使用下面两种方法。第二种方法是提取html/xml等的第三方库,beautifualsoup,有中文官方文档,很详细,可以去参考,很多人推荐这种方法。第三种方法就是用xpath,这个据说是对于不标准的html会出错,但对于我们这样不是做搜索引擎,只是小打小闹的,一般不会有问题,而且我觉得这个方法真的是太简单而且太容易理解了。

当然,这个是自己制作,还有比较高级的scrapy框架,这个就更方便了,也有中文官方文档。网上也有很多现成的例子,也可以去github去搜索scrapy,会得到很多别人写好的项目,读一下别人的代码,会有一些知识的拓展。。

本来也想详细写一个系列教程,下面这个链接里的哥们写的已经很详细了,可以参考。

http://cuiqingcai.com/1052.html    爬虫系列教程

另外,可以推荐大家一个网站,极客学院,讲的很不错,很实用

http://www.jikexueyuan.com/  极客学院

 

posted on 2015-09-19 22:19  slower  阅读(1267)  评论(0编辑  收藏  举报