msgbartop
用铅笔写日记,记录那最原始的美丽
msgbarbottom

博客搬迁至甲骨文首尔VPS

之前一直放在GCP免费VPS,苦于每月仅有2GB出站流量,即便有CDN,每月仍会收到零星美元的账单。

前段时期GCP绑带的VISA卡过期,一直来邮件提示更新卡面信息,索性换到甲骨文去.

由于所用的typecho 版本为老版本,受累于PDO_MYSQL老旧。以及linux站所用的simplephpblog 版本限制,只能镜像式搬迁,MySQL,PHP 只能沿用老旧版本,真的闹心。

[root@forever-free ~]# rpm -qa | grep php
php56w-devel-5.6.40-1.w7.x86_64
php56w-xml-5.6.40-1.w7.x86_64
php56w-opcache-5.6.40-1.w7.x86_64
php56w-pear-1.10.4-1.w7.noarch
php56w-gd-5.6.40-1.w7.x86_64
php56w-fpm-5.6.40-1.w7.x86_64
php56w-process-5.6.40-1.w7.x86_64
php56w-cli-5.6.40-1.w7.x86_64
php56w-mysqlnd-5.6.40-1.w7.x86_64
php56w-xmlrpc-5.6.40-1.w7.x86_64
php56w-pdo-5.6.40-1.w7.x86_64
php56w-mbstring-5.6.40-1.w7.x86_64
php56w-common-5.6.40-1.w7.x86_64
php56w-mcrypt-5.6.40-1.w7.x86_64
[root@forever-free ~]# rpm -qa | grep mariadb
mariadb101u-10.1.41-1.el7.ius.x86_64
mariadb101u-server-10.1.41-1.el7.ius.x86_64
mariadb101u-common-10.1.41-1.el7.ius.x86_64
mariadb101u-libs-10.1.41-1.el7.ius.x86_64
mariadb101u-server-utils-10.1.41-1.el7.ius.x86_64
mariadb101u-config-10.1.41-1.el7.ius.x86_64
mariadb101u-errmsg-10.1.41-1.el7.ius.x86_64
mariadb101u-devel-10.1.41-1.el7.ius.x86_64

web server 由lighttpd 更换至 caddyV2.

CDN依然使用cloudflare.

很喜欢的NATO宣传片,关于俄罗斯入侵乌克兰

简体中文的社交圈就是恶臭

最近乌克兰战事起,关注外媒的新闻的同时也瞄了几眼国内的社交圈子。

一个字——垃圾

简直没脸看,都是一群TMD什么玩意?脑残,沙雕

中国人都尼玛这B素质?脑子里面装的全是TMD屎吗?

真TMD是废物中的废物,垃圾中的垃圾。

垮掉的民族。

游客身份从SoundCloud下载MP3音频文件

不得不说,现在的流媒体网站确实很变态。为了下载自己喜欢的歌曲到电脑里,变得越来越难了。

以前查看页面源码,直接能找到歌曲的url,直接右击另存为就完事了。也算是斗智斗勇了。。。

SoundCloud 是国外著名的音频分享网站,里面有很多好歌,提供在线的免费试听。这个就给了我下载歌曲的可能性。

以袁咏琳的《画沙》为例,搜索歌名进入试听页面。打开F12,查看网络活动,可以观察到很多个的mp3字样的fetch 请求,如下图:

通过逐个打开后发现,每个音频时长大概在10秒左右。也就是说soundcloud 把一首完整的歌曲按照固定的SIZE切割成了若干块。用户在试听的时候不会感觉出来任何异样。但是若是要下载的话就变得很麻烦。

仔细观察url后发现一个规律,应该是使用了类似于路径变量PATH_VARIABLE 的东西,

https://cf-hls-media.sndcdn.com/media/4310412/4380628/t8iAt6nhAxDi.128.mp3?xxxxxxxx
>>>
https://cf-hls-media.sndcdn.com/media/START/STOP/t8iAt6nhAxDi.128.mp3?xxxxxxxx

相当于是下载文件的开始,结束大小区间。

弄懂了这一点,看到了一个 "https://cf-hls-media.sndcdn.com/playlist/t8iAt6nhAxDi.128.mp3/playlist.m3u8?xxxx" 的url,里面的内容基本印证了我的想法,如图:

如果是这样的话,那我可不可以找到文件最大的SIZE,然后修改url 把下载区间改成0-文件真实尺寸,那不就可以下载整首歌了?

想到这一层,我通过最后一次fetch 请求拿到了最终大小,如下图:

注:这个数值在playlist接口里面也可以找到。

然后将url修改成:
https://cf-hls-media.sndcdn.com/media/0/4380628/t8iAt6nhAxDi.128.mp3?xxxx 后面参数照搬,回车。

果然我可以试听到完整的《画沙》了,此刻,右击另存为,这首歌曲就可以下载到本地了。

大功告成!

注意:url 里面的Signature 签名啥的有时效限制,几分钟后就会失效。注意手速。真失效了提示 forbidden,重新刷新页面再获取一次签名。

Twitter 你好,Twitter 再见。Facebook 你好,Facebook 再见。

如此废品的平台,真心用不下去。分道扬镳!!!