每次在校园网的电影资源板块找电影,自己喜欢把电影名一个个去豆瓣搜评分,然后选评分高对口味的来看。这样好麻烦,正好看到爬虫,我是懒人一个,想着用爬虫做一个一劳永逸的方法,把睿思电影板块最近一周电影爬下来去板块搜到评分,然后排序,这样是不是方便多了,断断续续做了两天,基本搞定,python果然强大,这个虫虫潜力无限~~
统计结果
这里是我统计的最近一周的部分数据,金胖子果然受欢迎~
实现库
关于爬虫的基本原理,请移步这里,基本覆盖了爬虫的基础知识,以及相关的python库和爬虫框架的使用方法。可以先入个门。
在我的项目里,我没有用爬虫框架scrapy,因为这只是个小虫子了,不需要框架了。所以我选择了urllib2和Beautiful Soup4这两个库来实现我的虫子。urllib2主要实现请求、响应睿思和豆瓣。Beautiful Soup4则将请求到的html页面进行分析,取出我们想要的东西(比如电影名、豆瓣分数等)然后排序存储等。urllib2 教程,Beautiful Soup4教程,里边还涉及到一些简单的正则表达式和python的元组、列表等基本知识,请自行google,简单易懂,再次被python折服~~~
模块分析
我实现的爬虫只有三个模块,简单易懂,核心代码只有100行左右,这也是自己写代码太啰嗦的缘故
config模块
这个模块存储了登录睿思的一些基本设置,代码如下,一看便知
|
|
login模块
这个模块是一个登录睿思的类,类中的方法依次实现了获取cookies,登录睿思,获取response,获取formhash(如果要自动发帖需要post这个值)