惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Jina AI
Jina AI
V
Vulnerabilities – Threatpost
Security Latest
Security Latest
AI
AI
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
量子位
H
Help Net Security
Attack and Defense Labs
Attack and Defense Labs
The GitHub Blog
The GitHub Blog
L
LINUX DO - 最新话题
A
Arctic Wolf
博客园_首页
S
Securelist
S
Secure Thoughts
Google DeepMind News
Google DeepMind News
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
T
Tailwind CSS Blog
Apple Machine Learning Research
Apple Machine Learning Research
酷 壳 – CoolShell
酷 壳 – CoolShell
Stack Overflow Blog
Stack Overflow Blog
N
Netflix TechBlog - Medium
Cyberwarzone
Cyberwarzone
小众软件
小众软件
T
Threatpost
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
Blog — PlanetScale
Blog — PlanetScale
N
News and Events Feed by Topic
NISL@THU
NISL@THU
Forbes - Security
Forbes - Security
博客园 - 聂微东
F
Fortinet All Blogs
Simon Willison's Weblog
Simon Willison's Weblog
H
Heimdal Security Blog
罗磊的独立博客
S
Security @ Cisco Blogs
B
Blog
T
Troy Hunt's Blog
Engineering at Meta
Engineering at Meta
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
The Hacker News
The Hacker News
The Last Watchdog
The Last Watchdog
Hacker News - Newest:
Hacker News - Newest: "LLM"
I
Intezer
T
Threat Research - Cisco Blogs
C
Cybersecurity and Infrastructure Security Agency CISA
The Cloudflare Blog
S
Schneier on Security
月光博客
月光博客
L
LINUX DO - 热门话题
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org

ControlNet Blog

异星工厂中的高品质产率分析 比之前更进一步的终极看番工具栈 探索数据潜力:预训练模型与Masked Autoencoder的表征学习之旅 异星工厂原版原创蓝图分享 学习AI绘画,从Diffusion和CLIP开始 怎么通信比较快?Python跨进程通信测试 Python编程基础08:单元测试和异常处理 Python编程基础07:标准库和第三方库 LightIoC: Scala原生基于注解的依赖注入库 Python编程基础06:Python的面对对象编程 Windows最佳动画观看环境配置指南(MPC-HC, madvr, SVP, Anime4K) 计算机视觉中的Transformer续 Python编程基础05:Python的过程分解和文件IO Python编程基础04:Python高级集合类型和一些杂项 Aria2傻瓜安装部署指南 Python编程基础03:数据结构和Python集合类型 在UEFI Secure Boot下的Linux安装N卡驱动 计算机视觉中的Transformer 一些邮箱客户端的使用对比
解锁网易云变灰曲目PC版(Windows, MacOS)
ControlNet · 2021-06-30 · via ControlNet Blog

作为网易云的9级VIP用户,由于国内音乐版权的问题,用了那么久还订阅会员的网易云看到了很多音乐因版权而下架,于是折腾了一下,使用GitHub上现成的实现给网易云换源,从而解决音乐下架的问题。在这篇文章里,将会分享一下怎么在网易云PC上使用这项技术。

最早并且最出名的实现是GitHub上的nondanee/UnblockNeteaseMusic[1]。然而这名作者很少再继续维护这个项目,现在的替换效果不是很好,很多变灰的歌曲依然无法播放。于是,找到了另一个作者的Colin-XKL/UnblockNeteaseMusic[2]。这个项目在今天依然可用,所以将会介绍怎么部署服务端并且使用。现在建议使用最新的UnblockNeteaseMusic/server[3]

整个程序的架构是基于http代理的,所以需要部署一个代理服务器(可以是本机),然后在客户端上使用代理进行访问。

服务端部署

这个项目的服务端是基于node.js的,所以服务端是不限平台(Windows, MacOS或Linux)[4]。使用一台电脑或者服务器作为服务端,只要在需要使用网易云的时候能确保这台机器能运行即可。

安装服务端环境

第一步是安装这个项目所需的node.js和git,已安装的可以跳过。Linux和MacOS可以通过包管理器如apt或者brew来安装,windows请自行去谷歌寻找相应下载。

部署服务

首先使用git下载这个项目。

1
2

git clone https://github.com/UnblockNeteaseMusic/server.git

下载完成之后进入这个文件夹,并且使用yarn安装nodejs的依赖,并且编译这个项目。

1
2
3
cd UnblockNeteaseMusic
yarn
yarn build

运行服务端,其中的端口可以替换为自己想要的任意端口。

1
node app.js -p 7890:7891

当命令行中提示以下文本时,说明成功启动了。(注意这两个端口跟随自己上面的设置的。)

1
2
HTTP Server running @ http://0.0.0.0:7890
HTTPS Server running @ http://0.0.0.0:7891

当然,请使用screen,docker或者加载成系统服务之类的确保后台持续运行,这方面不再赘述。

证书签名

如果需要使用MacOS的网易云,需要自签证书来使用http代理,如果仅供Windows使用可以跳过此节。这里摘录了GitHub上的其中一个issue[5]

1
2
3
4
5
6
7
8
9
10
11
12
13
14

openssl genrsa -out ca.key 2048


openssl req -x509 -new -nodes -key ca.key -sha256 -days 1825 -out ca.crt -subj "/C=CN/CN=UnblockNeteaseMusic Root CA/O=YOURNAME"


openssl genrsa -out server.key 2048


openssl req -new -sha256 -key server.key -out server.csr -subj "/C=CN/L=Hangzhou/O=NetEase (Hangzhou) Network Co., Ltd/OU=IT Dept./CN=*.music.163.com"


openssl x509 -req -extfile <(printf "extendedKeyUsage=serverAuth\nsubjectAltName=DNS:music.163.com,DNS:*.music.163.com") -sha256 -days 365 -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt

准备好上面生成的ca.crt这个文件,等下需要用于MacOS的证书注册。

客户端配置

首先先来看一下没有解锁变灰曲目之前的样子。
before-unblocking
Fig. 1. 解锁前的网易云

居然有那么多变灰了,这怎么能忍!

Windows

Windows的网易云音乐内置了代理功能,非常的方便。

windows-setting
Fig. 2. Windows的网易云设置

这里选择HTTP代理,并且输入服务器IP(本机则为127.0.0.1),和刚才输入的第一个端口(对于上面的例子是7890)。然后重启网易云音乐,发现全部OK。

MacOS

MacOS的网易云音乐因为没有自带代理功能,所以相对来说比较麻烦。而且http代理也需要先注册证书。

先注册证书,双击之前在服务端准备好的ca.crt文件。然后在弹出的证书管理窗口中找到UnblockNeteaseMusic Root CA

ca-1
Fig. 3. 证书注册第一步

然后,双击这个证书,在”如何信任这个证书”这里选择”始终信任”即可,退出并保存。
ca-2
Fig. 4. 证书注册第二步

出来之后,在证书管理界面,点击这个证书,如果没有看到任何红字警告,则说明修改成功了。

证书签名之后,接下来是设置代理。因为网易云没有自带代理功能,这里建议使用Proxifier来完成,并且参考了GitHub中的另一个issue[6]

在本文中,我们使用Proxifier v2.29来进行演示。

proxifier-1
Fig. 5. Proxifier第一步

根据上图的箭头提示,进入代理服务器添加界面,并且输入对应的服务器地址(本机则为127.0.0.1)和端口(这里的例子中是7890),选择HTTP代理,并确认。

proxifier-2
Fig. 6. Proxifier第二步

根据上图提示,进入规则编辑界面,输入一个便于辨识的规则名。在应用程序处添加NeteaseMusic。在动作处选择刚才添加的代理方式,在这个例子里是Proxy HTTPS 192.168.0.146:7890。如果是本机的话,这个IP应该是127.0.0.1加一个端口。记得确认在规则界面,这条刚刚加的规则要打勾选上。

proxifier-3
Fig. 7. Proxifier结果
回到Proxifier主界面,启动网易云,这时候如果看到日志刷出来一大片,并且上面有网易云的名字,就说明网易云正在使用这个Proxifier代理,成功了。

最终效果

当折腾完上面说的步骤之后,再打开网易云看看。

result
Fig. 8. 解锁后的网易云

太棒了,终于可以听了!

参考文献

  • [1] "nondanee/UnblockNeteaseMusic", GitHub, 2021. [Online]. Available: https://github.com/nondanee/UnblockNeteaseMusic.
  • [2] "Colin-XKL/UnblockNeteaseMusic", GitHub, 2021. [Online]. Available: https://github.com/Colin-XKL/UnblockNeteaseMusic.
  • [3] "UnblockNeteaseMusic/server", GitHub, 2021. [Online]. Available: https://github.com/UnblockNeteaseMusic/server.
  • [4] "Node.js", Node.js, 2021. [Online]. Available: https://nodejs.org/en/.
  • [5] "进阶配置 · Issue #48 · nondanee/UnblockNeteaseMusic", GitHub, 2021. [Online]. Available: https://github.com/nondanee/UnblockNeteaseMusic/issues/48.
  • [6] "食用指南 · Issue #22 · nondanee/UnblockNeteaseMusic", GitHub, 2021. [Online]. Available: https://github.com/nondanee/UnblockNeteaseMusic/issues/22.