镜像文章

1.用其他音乐源帮帮网易云,Android听歌利器

2.用其他音乐源帮帮网易云,Windows听歌利器

众所周知,国内只有网易云推出了Linux的客户端,在Listen 1并不十分好用的基础下,网易云几乎是使用Ubuntu的唯一选择。

然而,网易云陷于版权纠纷已久,很多歌曲都无法在网易云听了,但是还是可以检索到,只是显示灰色。

这就是可以利用的地方了,既然可以检索,那么就可以使用代理的方式,将灰色歌曲解析为其他音乐源,再返回给网易云客户端即可。

1.安装node.js

# Using Ubuntu
curl -sL https://deb.nodesource.com/setup_13.x | sudo -E bash -
sudo apt-get install -y nodejs # Using Debian, as root
curl -sL https://deb.nodesource.com/setup_13.x | bash -
apt-get install -y nodejs

注意:务必按上述进行安装,一开始安装Ubuntu提示使用apt-get安装的nodejs-legacy无法正常运行。

https://github.com/nodesource/distributions/blob/master/README.md#deb

2.下载项目

git clone https://github.com/nondanee/UnblockNeteaseMusic.git #克隆项目仓库
cd UnblockNeteaseMusic #进入项目根目录

注意:根目录可能不同,具体问题具体分析。

3.设置代理

3.1寻找网易云服务器的IP

ping music.163.com

得到类似 59.111.181.60的IP

3.2向hosts文件添加记录

127.0.0.1 music.163.com
127.0.0.1 interface.music.163.com 

3.3设置参数启动

sudo node app.js -s -p 80 -f 59.111.181.60

注意:若在 linux/macOS下报错 Error: listen EACCES 0.0.0.0:80 请加 sudo

Server running @ http://0.0.0.0:80
events.js:187
throw er; // Unhandled 'error' event
^ Error: listen EACCES: permission denied 0.0.0.0:80
at Server.setupListenHandle [as _listen2] (net.js:1284:19)
at listenInCluster (net.js:1349:12)
at Server.listen (net.js:1437:7)
at /home/hans/UnblockNeteaseMusic/app.js:83:15
at processTicksAndRejections (internal/process/task_queues.js:93:5)
Emitted 'error' event on Server instance at:
at emitErrorNT (net.js:1328:8)
at processTicksAndRejections (internal/process/task_queues.js:80:21) {
code: 'EACCES',
errno: -13,
syscall: 'listen',
address: '0.0.0.0',
port: 80
}

成功状态一开始只显示:

HTTP Server running @ http://0.0.0.0:80

4.后台运行

4.1 npm换源

npm config set registry https://registry.npm.taobao.org

备注:如需换回官方源:

npm config set registry https://registry.npmjs.org/

https://www.cnblogs.com/cythia/p/10985080.html

4.2 安装pm2

npm install -g pm2

4.3设置后台运行

pm2 start app.js --  -s -p  -f 59.111.181.60

开机后进入~/UnblockNeteaseMusic运行此命令即可。

注意:由于pm2 fork出的新进程(执行app.js)没有root权限,所以这样执行可能会出错。

解决方案:按理说应该可以想办法让pm2给予其root权限,但是没有找到可行的方法。最后直接

sudo su
pm2 start app.js -- -s -p -f 59.111.181.60
exit

注意:当启动脚本后,网易云再打开会出现多个状态栏图标,故建议先打开网易云,再打开脚本进程。若先打开了进程,可:

sudo su
pm2 stop app
#打开网易云
pm2 start app
exit

备注:这样相当于root用户在运行app.js,在其他用户下查看pm2 list不存在app这一进程。若需查看或修改app进程,需再次进入root。若有更好的方案,欢迎与我联系。

$ pm2 start app.js # 启动app.js应用程序

$ pm2 start app.js -i 4        # cluster mode 模式启动4个app.js的应用实例

# 4个应用程序会自动进行负载均衡

$ pm2 start app.js --name="api" # 启动应用程序并命名为 "api"

$ pm2 start app.js --watch      # 当文件变化时自动重启应用

$ pm2 start script.sh          # 启动 bash 脚本

$ pm2 list                      # 列表 PM2 启动的所有的应用程序

$ pm2 monit                    # 显示每个应用程序的CPU和内存占用情况

$ pm2 show [app-name]          # 显示应用程序的所有信息

$ pm2 logs                      # 显示所有应用程序的日志

$ pm2 logs [app-name]          # 显示指定应用程序的日志

$ pm2 flush                       # 清空所有日志文件

$ pm2 stop all                  # 停止所有的应用程序

$ pm2 stop 0                    # 停止 id为 0的指定应用程序

$ pm2 restart all              # 重启所有应用

$ pm2 reload all                # 重启 cluster mode下的所有应用

$ pm2 gracefulReload all        # Graceful reload all apps in cluster mode

$ pm2 delete all                # 关闭并删除所有应用

$ pm2 delete 0                  # 删除指定应用 id 0

$ pm2 scale api 10              # 把名字叫api的应用扩展到10个实例

$ pm2 reset [app-name]          # 重置重启数量

$ pm2 startup                  # 创建开机自启动命令

$ pm2 save                      # 保存当前应用列表

$ pm2 resurrect                # 重新加载保存的应用列表

$ pm2 update                    # Save processes, kill PM2 and restore processes

$ pm2 generate                  # Generate a sample json configuration file

pm2文档地址:http://pm2.keymetrics.io/docs/usage/quick-start/

参考资料

https://github.com/nondanee/UnblockNeteaseMusic/issues/22

用其他音乐源帮帮网易云,Ubuntu听歌利器的更多相关文章

  1. 用其他音乐源帮帮网易云,Windows听歌利器

    镜像文章 1.用其他音乐源帮帮网易云,Ubuntu听歌利器 2.用其他音乐源帮帮网易云,Android听歌利器 只剩下Windows端了,一并送上. 1.Windows懒人版 1.1第一种懒人方法 下 ...

  2. 用其他音乐源帮帮网易云,Android听歌利器

    镜像文章 1.用其他音乐源帮帮网易云,Ubuntu听歌利器 2.用其他音乐源帮帮网易云,Windows听歌利器 1.TaiChi模块简介 TaiChi(太极)是一款免解锁,免root,就能够运行 Xp ...

  3. 音乐类产品——“网易云音乐”app交互原型模板(免费使用)

    网易云音乐虽是一款音乐app,但有人说它也是社交界的一股清流以及一匹黑马.音乐带给人的感染,激发着很多人在这里表达着他们的情绪和心声.网易云音乐上的真实用户点评,不仅被印在地铁的广告牌上,还在朋友圈频 ...

  4. 教你PC端网易云音乐自定义代理,VIP免费听歌!

    今天分享一份福利吧,使用网易云音乐自定义代理实现免费听和下载VIP.极高音质.付费的歌曲,这里主要针对PC端电脑版的,需要自己写脚本运行. 01 安装node.js Node.js是一个让 JavaS ...

  5. NetCloud——一个网易云音乐评论抓取和分析的Python库

    在17的四月份,我曾经写了一篇关于网易云音乐爬虫的文章,还写了一篇关于评论数据可视化的文章.在这大半年的时间里,有时会有一些朋友给我发私信询问一些关于代码方面的问题.所以我最近抽空干脆将原来的代码整理 ...

  6. 从Airbnb的发展历程和网易云的大起大落看IT行业创新(第5周课后作业)

    我想先根据个人看法回答“创新是什么?”这个空泛的问题.创新是面对当下的资源条件限制创造出能够满足动态需求或解决动态发展中的问题的新策略.这种实用化定义在大部分邻域都勉强能让定义者自圆其说,对于IT行业 ...

  7. Debian/Ubuntu 下网易云音乐无法由图标/列表 打开的解决方案

    前言 本文为使用图标或快捷方式直接打开网易云音乐的一个从安装说起的到解决问题的简单教程 环境 debian 9.5 理论上使用apt包管理器的发行版均支持 源使用国内的源即可,无需特殊指定 安装网易云 ...

  8. Ubuntu 16.04 一系列软件安装命令,包括QQ、搜狗、Chrome、vlc、网易云音乐安装方法

    1 简介 Ubuntu 16.04安装完后,还需要做一些配置才能愉快的使用,包括添加软件源.安装搜狗输入法.Chrome浏览器.网易云音乐.配置快捷键.安装git等等,下面就跟着我来配置吧,just ...

  9. 在Ubuntu 14.04 上安装网易云音乐

    之前因为电脑有网络的原因,一直使用网页网易云音乐听歌,最近电脑没网络使用,才发现网易云音乐有linux版本,果断下载. 在Chrome浏览器中,登陆官网下载Linux版本中的Ubuntu 14.04 ...

随机推荐

  1. VS code 生成html模板快捷键

    第一步:在空html文档中输入   ! 第二步:按下tab键.

  2. psfaddtable - 添加一个Unicode字符表到控制台字体中

    总览 psfaddtable 字体文件 表文件 [输出文件] 描述 Psfaddtable 命令融合了 字体文件 提供的 .psf 格式的控制台字体和 表文件 提供的Unicode字符表, 生成一个带 ...

  3. 阿里云搭建香港代理服务器 shadownsocks

    阿里云香港代理服务器搭建方式: 1.阿里云官网购买轻量级服务器即可,流量,配置套餐自己选择,CENTOS7,进入控制台后打开端口管理列表,打开9000即可. 2.安装shadownsocks服务端: ...

  4. Django 使用简单笔记

    1. Django项目的启动: 1. 命令行启动 在项目的根目录下(也就是有manage.py的那个目录),运行: python3 manage.py runserver IP:端口--> 在指 ...

  5. Spring事务中的readonly

    来源:https://www.cnblogs.com/straybirds/p/9147892.html Spring的事务经常会有这样的配置: <tx:method name="se ...

  6. 三栏布局只知道圣杯、双飞翼,最终评级是……F

    三栏布局,面试与工作中的常见布局.分左中右三部分,其中左右宽度已知,中间宽度自适应.根据不同的DOM顺序与CSS处理,这里写下了五类布局方式. 一.浮动布局 1 圣杯布局 L:"我问你,你就 ...

  7. 2.WCF学习--地址

    一.URI(统一资源标识) web服务可视为一种网络资源,并且可以通过一个URI来进行唯一标识.而服务通过终结点的形式发布出来,我们所说的一个服务在大部分场景中实际上指的是服务的某个终结点.终结点的核 ...

  8. linux查找一个文件的路径

  9. 谷歌已经对Android的开源严防死守

    上周,沸沸扬扬的Android垄断案把Google又一次推向了风口浪尖,在这次的垄断案中,Google被欧盟起诉赔偿50亿美元,被起诉的其中一个原因是Google对外宣称Android是开放的,但其实 ...

  10. php strip_tags()函数 语法

    php strip_tags()函数 语法 作用:剥去字符串中的 HTML 标签 语法:strip_tags(string,allow) 参数: 参数 描述 string  必须,规定要检查的字符串. ...