前段时间和室友闹剧荒,因而萌生出一种作个私人化推荐系统想法。(用户就咱们这一个宿舍)而其中电影的资源则是选择来自有大量电影电视剧信息的豆瓣。git
目前,电影的信息已经抓取完毕,共有11159条JSON格式的数据,内容包括:github
题目算法
时长segmentfault
类型cookie
导演机器学习
主演学习
地区spa
评分3d
2-3条短评code
期间本身琢磨着一些推荐系统的算法,但又不想让这一万多条空闲着,因而期间跑了一个简单的数据分析的脚本,没有高大上的算法,只是作了简单的统计。好吧,我认可我题目起DM二字确实有标题党de意思。若是你仍是感兴趣,欢迎往下看。
目前来讲豆瓣的反爬虫机制算是能够接受。你只需作到如下两点获取信息应该不成问题。
请求带上头部信息,尤为记得带上本身的cookie。
请求次数别太频繁,除非你的爬虫能够破解豆瓣的验证码问题。
个人爬虫采用了广度优先的作法。你在获取一个电影页面的时候,同时会带有同类或类似影片的链接,将这些当成下一个访问点。
在访问的时候,你可能会遇到超时的问题,这时不要舍弃该URL,应对捕获超时异常后从新将URL回到任务队列的尾部,若是你直接舍弃了这个URL,会致使最后的结果有严重的数据缺失。好比我在第一次没考虑到这点,就只爬取到5000多条,少了将近一半。
另一个要考虑到的就是,你必须记录已经访问过的URL,不然你的爬虫就会一直在死循环。
作到以上,应该就没太大的问题了。
如今咱们想看看演员和好片,烂片之间的关系(各选出前5名)。
如今以7分为标准
小于7分的
大于7分的
所有都是日本演员的名称。这里的补充说明一下,由于豆瓣并没有显著信息代表是电视剧仍是电影,因此
这数据在乎料以外,好比说为何好片没有某些美国演员的名字,坏片没有某些演员的名字,均可能是由于数据集中不只仅是电影信息,同时混杂了大量的日剧信息有关。
不过当我把评价标准下降到5分时却是发生了好玩的事情。
大于5分的
能够说,变化不算特别的大,而后咱们再看看小于5分的,前5名演员
呵呵……
而后咱们再来看看在5分的状况下,地区与好片,烂片的关系。
先来看好的
这张图就有些符合咱们的预期了,接下来再看看坏的。
我只能说这个更是在乎料之中了。就我的感觉来讲,国产虽然近年有所好转,不过明显还得继续努力……
接下来能够看看类型和影片时长的关系,在每一个时间段中,选出前5名作表明。
每一个时间段中,选出数量最多的前五名,制成饼状图,一目了然。能够发现其实每一个时间段中剧情这个类别都是占了最大份额,日常看片的时候就感受剧情这个分类莫名其妙,你要我说,我也实在说不出啥这类型片有啥特征。
其实我还作了,像导演和好片烂片的关系,时长和地区的关系等等,这里碍于篇幅,不一一举例了,感兴趣的能够到个人github上获取爬虫和数据分析的脚本。
这个项目会记录我学习机器学习和数据挖掘这个过程的一些小做品,关于github上的BetaMeow
的介绍能够看这里,至于本文说的内容在DouBanMovie
的目录下。
若是你也有ML或DM的做品或小项目,欢迎推荐给我,咱们能够互相给出友情连接,互相交流学习。若是你只是单纯对个人项目感兴趣,也欢迎watch或star支持一下,谢谢你们。