社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

Python爬虫之豆瓣音乐及糗事百科

Python中文社区 • 7 年前 • 978 次点击  

專 欄


罗罗攀,Python中文社区专栏作者

专栏地址:

http://www.jianshu.com/u/9104ebf5e177



一、豆瓣音乐top250

代码

1、加了请求头(本来没加,调试几次突然没数据了,加了请求头开始也没好,后来又好了,可能是网络原因); 
2、这次是进入信息页爬的数据(上次爬电影没采用这种方法,缺少了部分数据); 
3、数据的预处理用了很多if函数,厉害的兄弟有什么优化的方法。

数据分析


2、中国音乐作者还是很多的,哈哈; 
3、随着音乐设备和网络的普及,流行音乐的发展,可以看出2000年后作品越来越多,到2010年又下滑(经典就是经典,无法吐槽现在的音乐); 
4、风格大家可以看出流行,摇滚,民谣占了一大半; 
5、最后弄了一首周董的《不能说的秘密》做词云,想想小时候都是回忆啊。

二、糗事百科

代码

这次除了爬取老师的作业布置的字段外,还爬取了用户的一些信息,如图所示。

之前的作业亮同学已经详细讲解了,我今天就贴下我的代码:

数据存储到mongodb数据库中,如图:

数据预处理

首先,导入库和数据:

字段类型转化 
由于有些字段没有,填充了“不详”或None,所以age,comment字段都是文本类型的,需转化为整形,但有None这些东西没法转,需要把这些内容替换为“0”才能转,以下就是转化代码。(怎么就管不住我这双手呢,填空值可以直接转化,而且填充缺失值也很简单)

填补缺失值 
我把一些值都替换成了0,我们通过列的平均值进行填充即可。

玩糗事的人年龄 
通过describe看下:

  1.    data.describe()

可以看出平均年龄为34,话说不是我们才是段子手的主力军么,我回头看了下数据,有很多人填写的年龄为100以上,为虚假信息,由于数据量少,拉高了平均值,段子手是属于我们的!!!!(我不会告诉你我才17)

谁是段子手 
通过排序,找出前十评论和前十好笑的段子的用户,看看谁才是真正的段子手。

段子手性别比例

看下段子手男女比例:

男生比较多,哈哈,污污的女生最可爱!!!

段子词云

词云制作讲过很多次了,放上代码和图。

获取完整代码,请在公众号【未来Store】底部回复“豆瓣音乐”和“糗事百科”获取


本文为作者原创作品,未经作者授权同意禁止转载



长按扫描关注Python中文社区,

获取更多技术干货!

    

Python 中 文 社 区

Python中文开发者的精神家园

合作、投稿请联系微信:

pythonpost

— 人生苦短,我用Python —
1MEwnaxmMz7BPTYzBdj751DPyHWikNoeFS






点击阅读原文加入IT金融行业Python开发者联盟Python掘金队


今天看啥 - 高品质阅读平台
本文地址:http://www.jintiankansha.me/t/ETpiGVRp4W
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/2574
 
978 次点击