Python爬虫之豆瓣音乐及糗事百科
專 欄
❈
罗罗攀,Python中文社区专栏作者
专栏地址:
http://www.jianshu.com/u/9104ebf5e177
❈
一、豆瓣音乐top250
代码
1、加了请求头(本来没加,调试几次突然没数据了,加了请求头开始也没好,后来又好了,可能是网络原因); 2、这次是进入信息页爬的数据(上次爬电影没采用这种方法,缺少了部分数据); 3、数据的预处理用了很多if函数,厉害的兄弟有什么优化的方法。
数据分析
1、部分数据可以见上图; 2、中国音乐作者还是很多的,哈哈; 3、随着音乐设备和网络的普及,流行音乐的发展,可以看出2000年后作品越来越多,到2010年又下滑(经典就是经典,无法吐槽现在的音乐); 4、风格大家可以看出流行,摇滚,民谣占了一大半; 5、最后弄了一首周董的《不能说的秘密》做词云,想想小时候都是回忆啊。
二、糗事百科
代码
这次除了爬取老师的作业布置的字段外,还爬取了用户的一些信息,如图所示。
之前的作业亮同学已经详细讲解了,我今天就贴下我的代码:
数据存储到mongodb数据库中,如图:
数据预处理
首先,导入库和数据:
字段类型转化 由于有些字段没有,填充了“不详”或None,所以age,comment字段都是文本类型的,需转化为整形,但有None这些东西没法转,需要把这些内容替换为“0”才能转,以下就是转化代码。(怎么就管不住我这双手呢,填空值可以直接转化,而且填充缺失值也很简单)
填补缺失值 我把一些值都替换成了0,我们通过列的平均值进行填充即可。
玩糗事的人年龄 通过describe看下:
data.describe()
可以看出平均年龄为34,话说不是我们才是段子手的主力军么,我回头看了下数据,有很多人填写的年龄为100以上,为虚假信息,由于数据量少,拉高了平均值,段子手是属于我们的!!!!(我不会告诉你我才17)
谁是段子手 通过排序,找出前十评论和前十好笑的段子的用户,看看谁才是真正的段子手。
段子手性别比例
看下段子手男女比例:
男生比较多,哈哈,污污的女生最可爱!!!
段子词云
词云制作讲过很多次了,放上代码和图。
本文为作者原创作品,未经作者授权同意禁止转载
- Python防止sql注入
- 电工学PLC编程的入门建议
- 人工智能、区块链、图灵测试……这30个大数据热词你真的都懂吗?
- Enterprise Library 4.1学习笔记4----缓存应用程序块
- 设置py文件的路径
- jenkins中通过git发版操作记录
- Enterprise Library 4.1学习笔记3----安全应用程序块
- mysql密码遗忘和登陆报错问题
- 新一轮发展趋势:城市智能化已经势不可挡
- Enterprise Library 4.1学习笔记2----数据访问程序块
- 微信小程序中用户唯一ID的获取
- Mysql备份系列(2)--mysqldump备份(全量+增量)方案操作记录
- Enterprise Library 4.1学习笔记1----配置应用程序块(c/s和b/s均适用)
- 简单账本-用完即走的微信小程序
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- ExpandableListView实现手风琴效果
- 组复制性能 | 全方位认识 MySQL 8.0 Group Replication
- Android 中View.onDraw(Canvas canvas)的使用方法
- Android API编程之Assets文件操作示例
- Android自制精彩弹幕效果
- RollViewPager无限轮播使用方法详解
- ubuntu16.04 升级内核的方法步骤
- Android 列表倒计时的实现的示例代码(CountDownTimer)
- Android 控件设置阴影效果
- 解决VScode配置远程调试Linux程序的问题
- Android EasyBarrage实现轻量级弹幕效果
- android 获取本机其他app的版本信息的示例代码
- android相册选择图片的编码实现代码
- ClickHouse和他的朋友们(2)MySQL Protocol和Read调用栈
- Android图片三级缓存的原理及其实现