QQ音乐api解析源码-Shell PHP 易语言

2017年12月30日

原创内容,转载请注明出处:http://www.myzhenai.com.cn/post/2960.html http://www.myzhenai.com/thread-18071-1-1.html
关键词:QQ音乐解析源码 QQ音乐api QQ音乐解析shell QQ音乐解析php QQ音乐易语言
这个是利用QQ音乐平台的一个api接口实现的QQ音乐上的歌曲信息的获取,包含了歌曲名称,歌曲演唱者,歌曲logo,歌曲链接等。都是通过读取网页返回内容进行过滤操作的,这里只需要知道网页公开的api和歌曲的ID就可以进行。
SHELL源码

# !/bin/bash
. /etc/profile
############################################################################################################################################
#
# This is a lottery number automatic generation tool
# Autor: RucLinux
# Web: http://www.myzhenai.com.cn/ http://www.myzhenai.com/ http://www.haikou-china.com/ http://jiayu.mybabya.com/ http://www.0898-shop.com/
#  说明:转载引用请保留这段,谢谢
#
#############################################################################################################################################
pw="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"

#https://y.qq.com/n/yqq/song/0016I6cj2dkNzQ.html
###########################################################################################################
function qq() {
d=$(curl -s "${1}")
name=$(echo ${d} | awk -F "songname\":\"" '{ print $2 }' | awk -F "\",\"songtitle" '{ print $1 }')
auto=$(echo ${d} | awk -F "\"name\":\"" '{ print $2 }' | awk -F "\",\"title" '{ print $1 }')
iico=$(echo ${d} | awk -F "albummid\":\"" '{ print $2 }' | awk -F "\",\"albumname" '{ print $1 }' | sed -e 's/\\//g')
id=$(echo ${d} | awk -F "\"songid\":" '{ print $2 }' | awk -F ",\"songmid\"" '{ print $1 }' | sed -e 's/\\//g')
mp=$(echo "http://ws.stream.qqmusic.qq.com/${id}.m4a?fromtag=46")
ico=$(echo "https://y.gtimg.cn/music/photo_new/T002R300x300M00${iico}.jpg")
one="			{\n"
two="				title : "
three="				singer :"
four="				cover  :"
fives="				src    : "
six="			},\r"
echo -e "${one}${two}'${name}',\r${three}'${auto}',\r${four}'${ico}',\r${fives}'${mp}'\r${six}" >> ${pw}/in.log
wget -p ${pw} -O "${name}.mp3" ${mp}
}
###########################################################################################################
qq ${1}

#pw 变量是获取当前用户所在目录
#function 是新建一个函数
#qq 是新建的函数
#d 这个变量是通过curl来读取网页信息
#name 这个变量是通过过滤返回的网页源码并获取歌曲标题这些关键词
#auto 这个变量是通过过滤返回的网页源码获取歌曲的演唱者
#ico 这个变量是通过过滤返回的网页源码获取歌曲唱片图片
#mp 这个变量是通过合并源码里的两段信息获取歌曲的链接地址
#one two three four fives six这几个变量是定义输出的格式的关键字
#in.log 这一行是将所有变量集中输出到一个文件里,以便其他方式调用
#wget 这一行是下载歌曲文件


PHP源码

function qq($id)
{
    $durl = file_get_contents($id);
    $mpurl = getmusiczid($durl, '\"songid\":', ',\"songmid\"');
    $sname = getmusiczid($durl, 'songname\":\"', '\",\"songtitle');
    $aname = getmusiczid($durl, '\"name\":\"', '\",\"title');
    $picurl = getmusiczid($durl, 'albummid\":\"', '\",\"albumname');
    $mpurl = "http://ws.stream.qqmusic.qq.com/" . $mpurl . ".m4a?fromtag=46";
    $picurl = "https://y.gtimg.cn/music/photo_new/T002R300x300M00" . $picurl . ".jpg"
$muscz = array("歌曲名称" => $sname, "歌手名称" => $aname, "专辑图片" => $picurl, "歌曲地址" => $mpurl);
    return $muscz;
}


易语言源码

.版本 2
.支持库 iconv

.子程序 QQ, , , QQ音乐
.参数 歌曲地址, 文本型
.局部变量 mpurl, 文本型
.局部变量 sname, 文本型
.局部变量 aname, 文本型
.局部变量 picurl, 文本型
.局部变量 页面内容, 文本型
.局部变量 z, 逻辑型

.如果真 (寻找文本 (歌曲地址, “https”, , 假) ≠ -1)
    歌曲地址 = 子文本替换 (歌曲地址, “https”, “http”, , , 真)
.如果真结束
API下载 (歌曲地址, api_取特定目录 (17) + “qq.html”)
页面内容 = 到文本 (编码转换 (读入文件 (api_取特定目录 (17) + “qq.html”), #编码_UTF_8, #编码_GB2312, ))
页面内容 = Getmusicz (页面内容, “g_SongData”, “”)
mpurl = 子文本替换 (Getmusicz (页面内容, “songid”, “songmid”, 真), “:”, “”, , , 真)
sname = Getmusicz (页面内容, “songname:”, “songtitle”, 真)
aname = Getmusicz (页面内容, “singername:”, “singerid”, 真)
picurl = Getmusicz (页面内容, “albummid:”, “albumname”, 真)
mpurl = “http://ws.stream.qqmusic.qq.com/” + mpurl + “.m4a?fromtag=46”
picurl = “https://y.gtimg.cn/music/photo_new/T002R300x300M000” + picurl + “.jpg”
tow_编辑框.加入文本 (“歌曲名称:” + sname + #换行符 + “歌手名称:” + aname + #换行符 + “专辑图片:” + picurl + #换行符 + “外链地址:” + mpurl + #换行符 + “QQ音乐没有试听,但将地址复制到网页端或者浏览器地址栏里可以用html5试听,将audio代码复制下来可以正常播放”)
删除文件 (api_取特定目录 (17) + “qq.html”)
two_标签.标题 = #autol + mpurl + #autos
' htmlplayer (mpurl)


sicnature ---------------------------------------------------------------------
Your current IP address is: 54.224.216.155
Your IP address location: 美国
Your IP address country and region: 美国 美国
Your current browser is:
Your current system is:
Original content, please indicate the source:
同福客栈论坛 | 海南仙岛海南乡情论坛 | JiaYu Blog
sicnature ---------------------------------------------------------------------
Welcome to reprint. Please indicate the source http://www.myzhenai.com.cn/post/2960.html

没有评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注