一、准备工作
之前不理解爬虫的时候,感觉很强大,当你理解后会发现确实很强大,哈哈,开个小玩笑。言归正传,当你深入的了解,会发现爬虫其实就是解析网页内容,利用xpath、selector、re等语法抽取所需要的数据内容。所以说学习爬虫,首先要学会处理HTML的文本页面(包括抽取中间的文本内容,下载图片,抽取url等)。
以下列出学习几个处理web网页的Python模块及参考的博客:
1.HtmlParser
2.SGMLParser
3.pyQuery
- 官方文档:https://pythonhosted.org/pyquery/#quickstart
- 实战参考:http://blog.itpub.net/22166274/viewspace-1183937/
- 用法参考:http://blog.csdn.net/cnmilan/article/details/8727308
4.BeautifulSoup
5.lxml
在处理网页抽取数据的时候可以用以上5个模块,不过3、4、5是比较常用的,具体可根据自己的喜好选择用哪个,以上模块不用全部学习,多了也不一定都能记着,选一两个学就好。既然已经学会了数据的抽取接下来就是如何获取网页的数据内容了。
二、获取网页数据及处理
关于处于网页的,网上有大把的教程,我就不在闭门造轮子了。推荐一个详细的爬虫教程(基于urlib这个模块的)
爬虫(一):http://blog.csdn.net/pleasecallmewhy/article/details/8922826
爬虫(二):http://blog.csdn.net/pleasecallmewhy/article/details/8923067
爬虫(三):http://blog.csdn.net/pleasecallmewhy/article/details/8923725
爬虫(四):http://blog.csdn.net/pleasecallmewhy/article/details/8924889
爬虫(五):http://blog.csdn.net/pleasecallmewhy/article/details/8925978
爬虫(六):http://blog.csdn.net/pleasecallmewhy/article/details/8927832
爬虫(七):http://blog.csdn.net/pleasecallmewhy/article/details/8929576
爬虫(八):http://blog.csdn.net/pleasecallmewhy/article/details/8932310
爬虫(九):http://blog.csdn.NET/pleasecallmewhy/article/details/8934726
以上的教程是基于urlib这个模块的,你还可以利用requests这个模块来获取网页数据(本人是比较喜欢用requests的),处理各种的请求(get,post,delete等)。
Requests学习参考:
- http://docs.python-requests.org/en/master/
- http://docs.python-requests.org/en/latest/api/?highlight=elapsed#requests.Response.elapsed
当学习完以上后基本就选小成了,以下推荐一个爬虫的小游戏可以练练手,一共四关,当过了第一关后,第二关才会出现,当然你也可以直接在网上搜索第二关的地址,点击尝试,这几关网上有答案,但一定要先自己写然后再去参考答案,这样才有效果,办法不止一种,相信自己,多尝试。
还可以参考这两个地址,主要讲爬虫的思路及一些实现,参考地址: