网易云音乐综合爬虫python库NetCloud v1版本发布
以前写的太烂了,这次基本把之前的代码全部重构了一遍。github地址是:NetCloud.下面是简单的介绍以及quick start.
NetCloud——一个完善的网易云音乐综合爬虫Python库
目前只需要使用命令pip3 install netcloud 即可以完成模块的安装,支持Windows与Linux系统,完全支持python3,不保证兼容python2,所以强烈建议使用python3.代码github的地址是Netcloud
项目结构:
netcloud/
├── analyse
│
├── crawler
│
├── demo
│
├── login
│
├── test
│
└── util - source
netcloud是模块根目录
analyse:网易云音乐评论以及用户信息可视化分析的模块
crawler:网易云音乐评论爬虫模块
demo:一些demo
login:网易云音乐模块登录模块,提供了丰富的网易云api,包括音乐评论,专辑,歌手等等
test:测试模块
util:工具类模块,其中也包括了source目录,主要存放一些资源文件
快速使用,一些简单的例子如下(也可以参考demo模块的demos,或者下面列出的核心api):
- 抓取歌手歌曲的热门评论以及全部评论
from netcloud.crawler.Crawler import NetCloudCrawler
singer_name = "林俊杰"
song_name = "豆浆油条"
nc_crawler = NetCloudCrawler(song_name = song_name,singer_name = singer_name)
# 保存歌手的全部热门评论
nc_crawler.save_singer_all_hot_comments_to_file()
# 使用多线程(20个线程)保存歌曲的全部评论
nc_crawler.save_all_comments_to_file_by_multi_threading(20)
2.对于歌曲的评论文件以及评论用户进行可视化分析
from netcloud.analyse.Analyse import NetCloudAnalyse
singer_name = "王力宏"
song_name = "需要人陪"
nc_analyse = NetCloudAnalyse(song_name = song_name,singer_name = singer_name)
# 多线程抓取歌曲评论的全部用户相关信息并保存到磁盘
nc_analyse.save_all_users_info_to_file_by_multi_threading()
# 进行核心可视化分析,包括用户属性分布(年龄,地区,性别等)以及评论时间,关键词分布等),
# 生成的html文件可以在浏览器打开查看
nc_analyse.core_visual_analyse()
3.模拟登录网易云音乐,并尝试一些api
from netcloud.login.Login import NetCloudLogin
# 模拟登录,如果不传任何参数,则表示从config.xml文件加载登录信息(用户名,密码等)
# 配置文件的默认路径是:当前登录用户home目录/.NetCloud/config/config.xml
nc_login = NetCloudLogin()
# 也可以显式传入用户名和密码等登录信息
#nc_login = NetCloudLogin(phone="xxxxxxxxxxx",password="xxxxxxx",email="xxxxx",rememberLogin=True)
# 打印登录用户的朋友动态,结果以json格式展示
print(nc_login.get_friends_event().json())
# 打印自身用户id
print(nc_login.get_self_id())
# 打印自己收藏的专辑(结果太长,这里略过)
print(nc_login.get_self_record().json())
# 单线程下载歌单中的全部歌曲到本地
nc_login.download_play_list_songs(2431814627,limit=1000)
# 打印自己的前10条fans信息
print(nc_login.get_self_fans(offset=0,limit=10).json())
- 调用login的一些核心api,格式化打印一些信息
from netcloud.login.Printer import NetCloudPrinter
# 同上,可以不传参数从配置文件加载登录信息
# 或者也可以显式传入登录参数
nc_printer = NetCloudPrinter()
# 格式化打印搜索api搜索歌手`韩红`的结果
nc_printer.pretty_print_search_singer(search_singer_name="韩红")
'''
2019-01-15 02:56:23,416 - Printer.py[line:246] - INFO: Your search singer name is:韩红
2019-01-15 02:56:23,417 - Printer.py[line:249] - INFO: Here is your search result(total 1):
2019-01-15 02:56:23,417 - Printer.py[line:251] - INFO: -------------------- search result 1 --------------------
2019-01-15 02:56:23,417 - Printer.py[line:253] - INFO: singer name:韩红
2019-01-15 02:56:23,418 - Printer.py[line:255] - INFO: alias:
2019-01-15 02:56:23,418 - Printer.py[line:259] - INFO:
singer id:7891
2019-01-15 02:56:23,418 - Printer.py[line:261] - INFO: singer image url:http://p2.music.126.net/Se3mLHw_oKufAnG7VCka_g==/109951163096672305.jpg
2019-01-15 02:56:23,418 - Printer.py[line:263] - INFO: singer mv count:20
2019-01-15 02:56:23,418 - Printer.py[line:265] - INFO: singer album count:43
'''
# 格式化打印自己的信息
nc_printer.pretty_print_self_info()
'''
2019-01-15 03:33:21,658 - Printer.py[line:57] - INFO: Hello,Lyrichu!
Here is your personal info:
2019-01-15 03:33:21,659 - Printer.py[line:74] - INFO: avatarUrl:http://p2.music.126.net/OkEDo-a_rHCC1zEDbg7dYg==/8003345140341032.jpg
signature:热爱生活,热爱音乐!
nickname:Lyrichu
userName:0_m15527594439@163.com
province_id:420000
birthday:1995-02-12
description:
gender:male
userId:44818930
cellphone:xxxxxxx
email:xxxxxxxx@163.com
'''
详细介绍请去github NetCloud,欢迎star & fork & pr.
网易云音乐综合爬虫python库NetCloud v1版本发布的更多相关文章
- 爬取网易云音乐评论!python 爬虫入门实战(六)selenium 入门!
说到爬虫,第一时间可能就会想到网易云音乐的评论.网易云音乐评论里藏了许多宝藏,那么让我们一起学习如何用 python 挖宝藏吧! 既然是宝藏,肯定是用要用钥匙加密的.打开 Chrome 分析 Head ...
- python爬虫实例--网易云音乐排行榜爬虫
网易云音乐,以前是有个api 链接的json下载的,现在没了, 只有音乐id,title , 只能看播放请求了, 但是播放请求都是加密的值,好坑... 进过各种努力, 终于找到了个大神写的博客,3.6 ...
- 网易云音乐 歌词制作软件 BesLyric (最新版本下载)
导读 BesLyric , 一款专门制作 网易云音乐 LRC 滚动歌词的软件! 搜索.下载.制作 歌词更方便! 哈哈,喜欢网易云音乐,又愁于制作歌词的童鞋有福啦!Beslyric 为你排忧解难! 本文 ...
- Python 获取 网易云音乐热门评论
最近在研究文本挖掘相关的内容,所谓巧妇难为无米之炊,要想进行文本分析,首先得到有文本吧.获取文本的方式有很多,比如从网上下载现成的文本文档,或者通过第三方提供的API进行获取数据.但是有的时候我们想要 ...
- Github获8300星!用Python开发的一个命令行的网易云音乐
最近在逛Github发现了一个非常有趣的库musicbox,是用纯Python打造的,收获了8300颗星.Python语言简单易学,好玩有趣,身边越来越多的小伙伴都开始学习Python.她的魅力非常大 ...
- 对网易云音乐参数(params,encSecKey)的分析
我们如果对网易云音乐进行爬虫的话,我们会发现,提交的参数是(params,encSecKey),然而这两个参数是一串很长的东西 我们要对网易云进行爬虫,那么就一定要将这两个参数弄明白,然后才可以进行爬 ...
- NetCloud——一个网易云音乐评论抓取和分析的Python库
在17的四月份,我曾经写了一篇关于网易云音乐爬虫的文章,还写了一篇关于评论数据可视化的文章.在这大半年的时间里,有时会有一些朋友给我发私信询问一些关于代码方面的问题.所以我最近抽空干脆将原来的代码整理 ...
- Python爬虫小白入门(六)爬取披头士乐队历年专辑封面-网易云音乐
一.前言 前文说过我的设计师小伙伴的设计需求,他想做一个披头士乐队历年专辑的瀑布图. 通过搜索,发现网易云音乐上有比较全的历年专辑信息加配图,图片质量还可以,虽然有大有小. 我的例子怎么都是爬取图片? ...
- 如何用Python网络爬虫爬取网易云音乐歌曲
今天小编带大家一起来利用Python爬取网易云音乐,分分钟将网站上的音乐down到本地. 跟着小编运行过代码的筒子们将网易云歌词抓取下来已经不再话下了,在抓取歌词的时候在函数中传入了歌手ID和歌曲名两 ...
随机推荐
- ZOJ:2833 Friendship(并查集+哈希)
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=2833 A friend is like a flower, a rose ...
- pycharm进行调试[转载]
转自:https://blog.csdn.net/william_hehe/article/details/80898031 1.首先设置断点. 2.Step into(F7):进入 若函数A内存在子 ...
- Oracle多关键字模糊查询
以前写SQL时,知道MySQL多字段模糊查询可以使用[charlist] 通配符,如: SELECT * FROM Persons WHERE City LIKE '[ALN]%'但是在Oracle中 ...
- 7.8 Models -- The Rest Adapter
一.概述 默认的,store将会使用 DS.RESTAdapter来加载和存储records.这个RESTAdapter假定URLS和JSON关联每一个model是约定好的:这意味着,如果你遵循这个规 ...
- Js中split()方法的正确使用
通过 js 获取 QueryString (location.search部分) 参数很常见,网上代码也满天飞.不过现在的框架,基本上都通过路由伪静态了,把以前的 QueryString 变成了pat ...
- HOW TO: 在 Visual C# .NET 应用程序中提供文件拖放功能
本文假定您熟悉下列主题: Windows 窗体列表框控件 Windows 窗体事件处理 生成示例的步骤 列表框控件提供了您需要处理的两个拖放事件: DragEnter 和 DragDrop. 当您在控 ...
- bootstrap 带有确定取消按钮的modal
</div><div class="modal fade" id="confirmModal" tabindex="-1" ...
- Atcoder Tenka1 Programmer Contest 2019 E - Polynomial Divisors
题意: 给出一个多项式,问有多少个质数\(p\)使得\(p\;|\;f(x)\),不管\(x\)取何值 思路: 首先所有系数的\(gcd\)的质因子都是可以的. 再考虑一个结论,如果在\(\bmod ...
- 持续集成之二:搭建SVN服务器(SvnAdmin)
安装环境 Red Hat Enterprise Linux Server release 7.3 (Maipo) jdk1.7.0_80 apache-tomcat-7.0.90 mysql-5.7. ...
- 论文笔记:语音情感识别(四)语音特征之声谱图,log梅尔谱,MFCC,deltas
一:原始信号 从音频文件中读取出来的原始语音信号通常称为raw waveform,是一个一维数组,长度是由音频长度和采样率决定,比如采样率Fs为16KHz,表示一秒钟内采样16000个点,这个时候如果 ...