最近出现的网页版网易云音乐的问题
Closed this issue · 32 comments
启用脚本后灰色歌曲倒是可以点击播放了,但很多歌曲缓冲半天后显示播放失败。(一个月之前左右还不是这样)不仅如此,启用脚本后很多本来没下架的歌曲也没法播放了,一样的缓冲失败。
希望提供具体的连接 谢谢。
On Tue, 5 Apr 2016 04:01 Adiwon, notifications@github.com wrote:
启用脚本后灰色歌曲倒是可以点击播放了,但很多歌曲缓冲半天后显示播放失败。(一个月之前左右还不是这样)不仅如此,启用脚本后很多本来没下架的歌曲也没法播放了,一样的缓冲失败。
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
#29
@RukinoSaki
第一首是因为歌曲下架了,获取不到地址;
第二首可以正常播放。
测试时,脚本启用了所有海外用户选项。
最近常常有撥到一半 撥放器就會卡住 手動換下一首歌又好的情形
@tripall 应该是代理质量不好… 载入前半段是一个 proxy,后一段换成了坏的 proxy 就爆炸了
来源:https://github.com/Chion82/163-music-unlock
似乎是从这个API 去拿到资料
这脚本有机会强化一下吗?
想到办法绕过限制了。
更新至最新版,在选项 勾上 海外用户
以及取消勾选 自己代理 m*.music.126.net
,刷新网页即可体验。
手机能用因为流量是加密后的,服务器直接反带相关 API。不过如果要弄成和手机一样的效果,要想办法提取 AES 密钥出来。不过我怀疑客户端还用了 RSA 加密,就和网页版一样?
不过有一些音乐感觉彻底没救了,比如 Only My Railgun。
上面那首利用反向代理 好像还是可听的
Hi 我朋友那边好像是可以听的
我用了一下似乎可以连
但我这边从网页都没办法...
Hi 我这里用代理无法连接。
如果可以的话 帮我问一下你的朋友 有没有登陆账号,以及什么特别的操作来听歌的?
我这里找国内服务器反带还是无法获取到有效曲目信息。
谢谢。
看了下,国内 ip 读手机版接口可以无视版权信息。
然而.. 一坨加密不会构造,等菊苣给 demo。
感觉是网路环境的关系... 看来有特定的IP可以拿到曲目信息
@tripall 如果某些特定的 ip 地址能够获取的话,请务必告诉我这个 ip :D
@tripall 新版本加了一个实验性的功能,从第三方服务器获取目前无法正常获取的曲目信息 (可能涉及用户隐私因此要求手动在选项启用)。例如之前在 #29 (comment) 提到的 Only My Railgun 可以正常播放。
但是第三方服务不知道能存活到什么时候。
Hi, 我测试了一下我这边Firefox 无法正常Work, Chrome的话在切换歌曲方面 有些问题 例如换歌单时 第一首歌曲好像都会没办法正常切过去 要按下一首才行
切歌有时候傻傻的 不清楚是不是脚本带来的问题,我也没法关掉脚本测试。。
火狐的兼容暂时不准备修,现在在用 ts 重构,将尽量多使用火狐狸进行测试。
感谢反馈~
On Thu, 9 Jun 2016 12:05 tripall, notifications@github.com wrote:
Hi, 我测试了一下我这边Firefox 无法正常Work, Chrome的话在切换歌曲方面 有些问题 例如换歌单时
第一首歌曲好像都会没办法正常切过去 要按下一首才行—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
#29 (comment),
or mute the thread
https://github.com/notifications/unsubscribe/AFcslTh6Lg7elwoy0ElJxOqe0aPNPcUIks5qJ_OLgaJpZM4H_s87
.
@jixunmoe 能不能经常的清空一下localStorge里的缓存啊。比如在版本升级或者更改过设置之后。因为有一次不能放收费歌曲,直到我手动清空了一下localStorage.removeItem('track-queue-cache'),可能有时候缓存的mp3是错的(blank.mp3)。
不太清楚现在怎么样设置,我勾了所有选项,现在下架歌曲还是不能听,提示播放失败,比如http://music.163.com/#/song?id=412327035
@RukinoSaki 我可以播放。虽然不是那么容易,因为一开始我也不能播放。
先去设置页面,勾选“海外用户”,这个选项经常会自动关闭。
在music.163.com的控制台执行一下localStorage.removeItem('track-queue-cache')
。
播放歌曲。
如果不能播放,再添加几首其它歌曲,点上一首下一首按钮切换几下。
@heroboy 执行后输出undefined
看来要多做个检测 如果是空白占位符就重新获取
目前准备用 TypeScript 重构,可否禁用当前脚本,然后试试 TS 版 (并重新在设置页面启用相关选项)?
https://github.com/JixunMoe/cuwcl4c/raw/master-ts/out/cuwcl4c-ts.user.js
@jixunmoe 新的安装之后在脚本里看不到啊 不清楚是不是装上了
还有个问题 我用的opera浏览器,配置界面经常打不开,提示“正在重设设定,稍后将自动刷新该页面。”
Hi 我找到一些TS版的问题
第一个是歌词都无法显示
第二个是Fx的上面无法拨放这歌单的第二首 在chrome上面正常拨放
http://music.163.com/#/playlist?id=392770308
不好意思打擾開發者, 但我在chrome上面使用這個插件失效, log如下:
[CUWCL4C][日志] 脚本开始执行。
[CUWCL4C][日志] 域名: 163.com; 完整地址: http://music.163.com/; 请求参数: {}
[CUWCL4C][日志] 脚本版本 [ 3.0.575 ] , 如果发现脚本问题请提交到 [ https://greasyfork.org/forum/post/discussion?Discussion/ScriptID=2600 ] 谢谢。
[CUWCL4C][日志] onStart 准备阶段 :: 开始
[CUWCL4C][日志] 应用 [网易音乐下载解析] 的样式表…
[CUWCL4C][信息] 执行规则: 网易音乐下载解析<ID: music.163>[事件: onStart]
[CUWCL4C][日志] onStart 准备阶段 :: 结束
[CUWCL4C][日志] onBody 阶段 :: 开始
[CUWCL4C][信息] 执行规则: 网易音乐下载解析<ID: music.163>[事件: onBody]
[CUWCL4C][日志] onBody 阶段 :: 结束
[CUWCL4C][错误] [H.waitUntil] Callback for 3.0.575 had an error: Cannot read property 'prototype' of undefined
错误追踪Error
at Object.eval (eval at v (eval at exec (unknown source)), <anonymous>:11848:63)
at Object.eval (eval at v (eval at exec (unknown source)), <anonymous>:12134:7)
at <anonymous>:2:95
at f.string.d.(anonymous function) (eval at exec (unknown source), <anonymous>:48:204)
edit: 使用TS版正常了, 辛苦作者啦
现在那些版权问题而变灰的歌曲好像绕不过去了吧?那是否能不要再在UI上移除变灰呢,这样至少知道哪些听不了也不用费劲去点了
而且现在国内和海外用户变灰的歌曲都一样了(都是只有版权下线变灰,海外用户不会多变灰一些(原来会),只是不用脚本播不了而已)。
一个范例:
http://music.163.com/#/playlist?id=4165125
http://music.163.com/#/song?id=297780
@fireattack 开脚本选项,大部分能播,例如你给的歌单的光辉岁月还是能播的。
纯用户脚本无法绕过,因为有一个很蠢的设定:除非网页资源加载成功,否则不会返回跳转后的地址。
「我会好好的」这首歌通过第三方返回的地址是 m2.music.126.net
的,如果搭建本地代理,播放没有问题。
$ curl -v -L -H "Range: bytes=0-2" http://api.itwusun.com/music/songurl/wy_320_297780.mp3?sign=048b07b9e2e6d89a4e856f865de9f6bc
* Trying 115.28.141.111...
* Connected to api.itwusun.com (115.28.141.111) port 80 (#0)
> GET /music/songurl/wy_320_297780.mp3?sign=048b07b9e2e6d89a4e856f865de9f6bc HTTP/1.1
> Host: api.itwusun.com
> User-Agent: curl/7.49.1
> Accept: */*
> Range: bytes=0-2
>
< HTTP/1.1 302 Found
< Cache-Control: private
< Content-Type: text/plain
< Location: http://m2.music.126.net/1R2ojLx8jFxjXxV7Opi8qQ==/1029142883604897.mp3
< Vary: Accept
< Server: Microsoft-IIS/7.0
< X-Powered-By: ServiceStack/4.050 Win32NT/.NET
< X-AspNet-Version: 4.0.30319
< X-Powered-By: ASP.NET
< Date: Thu, 04 Aug 2016 15:02:00 GMT
< Content-Length: 0
<
* Connection #0 to host api.itwusun.com left intact
* Issue another request to this URL: 'http://m2.music.126.net/1R2ojLx8jFxjXxV7Opi8qQ==/1029142883604897.mp3'
* Trying 127.0.0.1...
* Connected to m2.music.126.net (127.0.0.1) port 80 (#1)
> GET /1R2ojLx8jFxjXxV7Opi8qQ==/1029142883604897.mp3 HTTP/1.1
> Host: m2.music.126.net
> User-Agent: curl/7.49.1
> Accept: */*
> Range: bytes=0-2
>
< HTTP/1.1 301 Moved Permanently
< Date: Thu, 04 Aug 2016 15:02:00 GMT
< Server: Apache/2.4.16 (Win32) OpenSSL/1.0.2d PHP/7.0.0beta3
< Location: http://p2.music.126.net/1R2ojLx8jFxjXxV7Opi8qQ==/1029142883604897.mp3
< Content-Length: 388
< Content-Type: text/html; charset=iso-8859-1
<
* Ignoring the response-body
* Connection #1 to host m2.music.126.net left intact
* Issue another request to this URL: 'http://p2.music.126.net/1R2ojLx8jFxjXxV7Opi8qQ==/1029142883604897.mp3'
* Trying 151.249.94.25...
* Connected to p2.music.126.net (151.249.94.25) port 80 (#2)
> GET /1R2ojLx8jFxjXxV7Opi8qQ==/1029142883604897.mp3 HTTP/1.1
> Host: p2.music.126.net
> User-Agent: curl/7.49.1
> Accept: */*
> Range: bytes=0-2
>
< HTTP/1.1 206 Partial Content
< Date: Thu, 04 Aug 2016 15:02:01 GMT
< Server: PWS/8.1.38
< X-Px: ms h0-s42.p6-lhr ( h0-s57.p6-lhr), ht-d h0-s57.p6-lhr.cdngp.net
< ETag: dea65140bb9660f40a0ce1cd39f2f95b-1
< Cache-Control: max-age=31536000
< Expires: Fri, 04 Aug 2017 14:34:30 GMT
< Age: 1651
< Accept-Ranges: bytes
< Content-Length: 3
< Content-Type: image/jpg; charset=UTF-8
< Content-Disposition: inline; filename="1R2ojLx8jFxjXxV7Opi8qQ%3D%3D%2F1029142883604897"
< Last-Modified: Thu, 10 Dec 2015 23:35:14 Asia/Shanghai
< Content-Range: bytes 0-2/10842588
< Connection: keep-alive
<
ID3* Connection #2 to host p2.music.126.net left intact
127.0.0.1
是我的本地地址,如果不嫌弃的话你也可以搭建。教程我就不放了,网络上一堆,nginx 或 apache 跳转都可以。
Apache 的 .htaccess
:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^m1\.music\.126\.net [NC]
RewriteRule ^(.*)$ http://p1.music.126.net/$1 [NC,R=301]
RewriteCond %{HTTP_HOST} ^m2\.music\.126\.net [NC]
RewriteRule ^(.*)$ http://p2.music.126.net/$1 [NC,R=301]
另外如果有新的问题请新建 Issue... 每次看报告都要翻好久..