前言
网易云音乐是当前比较流行的音乐网站,每天都会推荐热门歌单,正好自己也喜欢听音乐,就想能不能用python实现一个云音乐歌单的自动获取和通过微博发布的功能。
正文
简单思路是这样的,用Python每隔一段时间去获取页面信息,然后跟之前获取的信息作比较,如果一样就不管,反之说明有更新,这时候把更新的歌单名,歌单封面,歌单链接通过微博发布出来。
Python的sinaweibopy提供了一种很方便的途径发送微博,只需要提前去微博开放平台注册一下,然后申请 应用开发 -> 移动应用 然后根据个人信息填写,之后会收到邮件 里边有app key, app secret 。
注意!! 非常重要!去应用信息-高级信息里面填写回调页 这是什么我也不知道!但是照着填!我填的是 https://api.weibo.com/oauth2/default.html 这个需要和之后的python code里面的 callback url一致!!!
代码
需要用到的包
- time
- sinaweibopy
- requests
- beautifulsoup4
- urllib
main.py
|
|
成果
后记
页面的爬取没有什么难度,有的就是网易云的歌单播放量有的有‘万’字,有的没有,要从有‘万’字的歌单里面挑一个最高的来发布。
sinaweibopy目前好像只支持python2,我一直用的3,所以写的过程很蛋疼,电脑换来换去。
虽然我设置了20s检测一次,不过网易云的歌单更新还是比较慢的….好几天播放量最高的才换一个,一开始我想推荐歌单里面的歌曲,不过字数超过140了,以后再想想发布的内容更丰富一点。