[作者:张赐荣]

获取喜马拉雅音频直链的方法
对以下地址发起Request Get请求,返回Json格式结果,其中的data.src就是音频的真实路径。
"https://www.ximalaya.com/revision/play/v1/audio?ptype=1&id=soundID"
参数为sound id。
例如以下音频地址:"http://www.ximalaya.com/43755913/sound/355188898"
取"/sound/"候面的一串数字,得到音频ID"355188898"
形成请求地址:"https://www.ximalaya.com/revision/play/v1/audio?ptype=1&id=355188898"
返回JSON
{"ret":200,"data":{"trackId":355188898,"canPlay":true,"isPaid":false,"hasBuy":true,"src":"https://aod.cos.tx.xmcdn.com/storages/b35f-audiofreehighqps/3B/2A/CMCoOSIDhXNVARUyWwBm3Gnh.m4a","albumIsSample":false,"sampleDuration":180,"isBaiduMusic":false,"firstPlayStatus":true,"isVipFree":false,"isXimiAhead":false,"isAlbumTimeLimited":false,"ximiVipFreeType":0,"joinXimi":false}}
以下PHP代码封装了获取喜马拉雅音频直链地址的函数,传入音频ID(URL sound 之后的那串数字)即可
<?php
echo(GetLink("355188898"));
function GetLink ($sid)
{
$gc_url="https://www.ximalaya.com/revision/play/v1/audio?ptype=1&id=".$sid;
$gc_ch = curl_init();
curl_setopt($gc_ch, CURLOPT_L_VERIFYPEER, FALSE);
curl_setopt($gc_ch, CURLOPT_L_VERIFYHOST, FALSE);
curl_setopt($gc_ch, CURLOPT_REFERER,$gc_url);
curl_setopt($gc_ch, CURLOPT_URL,$gc_url);
curl_setopt($gc_ch, CURLOPT_USERAGENT,'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.182 Safari/537.36 Edg/88.0.705.81');
curl_setopt($gc_ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($gc_ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($gc_ch, CURLOPT_HEADER,0);
$gc_content = curl_exec($gc_ch);
curl_close($gc_ch);
$resultObject=json_decode($gc_content);
return($resultObject->data->src);
}
?>

张赐荣 | PHP 获取喜马拉雅音频直链地址相关推荐

  1. 张赐荣 | 浅谈 UIAutomation 自动化技术在读屏软件中的应用

    读屏软件工作原理 [文 / 张赐荣] Windows UIAutomation 是 Windows 操作系统中的软件自动化技术,能让开发人员通过编程方式访问和操作 Windows 系统中的用户界面元素 ...

  2. 张赐荣 | 工信部信息技术互联网内容无障碍可访问性技术要求与测试方法

    [整理人:张赐荣] <GB_T37668-2019_信息技术互联网内容无障碍可访问性技术要求与测试方法> 前言 本标准按照GB/T1.1-2009给出的规则起草. 请注意本文件的某些内容可 ...

  3. 张赐荣 | 详解SAPI5语音转换扩展XMLTTS标记

    SAPI5语音转换扩展XMLTTS标记语言详解 [作者:张赐荣] SAPI 文本语音转换(TTS)扩展标记语言(XML)标签分成几个范畴. 声音状态控制 直接项插入 声音上下文控制 声音选择 声音状态 ...

  4. 张赐荣 | Windows 消息处理机制 入门

    张赐荣 | Windows 消息处理机制 入门 [文 / 张赐荣] 事件驱动和消息循环 消息概述 消息,就是指Windows发出的一个通知,告诉应用程序某个事情发生了.例如,单击鼠标.改变窗口尺寸.按 ...

  5. 张赐荣: C#ADO.NET 操作Mysql 详细教程

    [作者:张赐荣] ADO.NET是.NET框架中用于访问数据库的一组组件.它可以用于访问不同类型的数据库,例如MySQL.Oracle.SQL Server等. 基本使用 下面是使用ADO.NET连接 ...

  6. 张赐荣:计算机网络快速入门教程

    计算机网络协议快速入门 [编辑 / 张赐荣] 我们每天都使用互联网.你有没有想过,它是如何工作的? 全世界几十亿台电脑,连接在一起,两两通信.上海的某一块网卡送出信号,洛杉矶的另一块网卡居然就收到了, ...

  7. 张赐荣 | 安装版软件和绿色版软件究竟有什么区别?

    安装版软件和绿色版软件究竟有什么区别? [作者:张赐荣] 众所周知,大部分软件都需要先安装才能使用,例如 QQ.360.迅雷等,要先从网上下载一个安装包,然后安装到电脑的 C 盘或者 D 盘等.大部分 ...

  8. 张赐荣: 详解 Java 中的包装类型

    在Java中,包装类型是用于将基本数据类型(int.float.boolean等)转换为对象的类.这些类被称为包装类,它们的名字都是在基本数据类型前面加上"Integer".&qu ...

  9. 张赐荣 | Windows 常用快捷键大全

    Windows 常用快捷键大全 熟练掌握运用快捷键将会大大提升操作效率,本文整理了 Windows常用热键. [推荐阅读<详细键盘布局介绍及各功能按键说明>:https://www.cnb ...

最新文章

  1. RedHat、CentOS设置静态IP、主机名、关闭防火墙(虚拟机VMware客户机)
  2. iphone屏蔽系统更新_一招屏蔽系统更新!再见 iOS 13...
  3. 百度空间互踩_贝壳联手百度地图 整合新房信息找房更便捷
  4. 在PPT中插入flash动画和影片
  5. 《Haskell趣学指南》—— 第2章,第2.3节类型变量
  6. 122. 买卖股票的最佳时机 II008(贪心算法+思路)
  7. php铺满,重复铺满水印 - Jun. - OSCHINA - 中文开源技术交流社区
  8. Oracle 并行查询
  9. jieba分词_Jieba.el – 在Emacs中使用jieba中文分词
  10. iOS音乐后台播放及锁屏信息显示
  11. 【BZOJ3238】差异,后缀数组+单调栈维护height
  12. mvn exec运行java Main报错
  13. 485通信c语言编程linux,485通讯问题(C语言)
  14. [DNS]ACL、also-notify、视图服务器及安全设置
  15. Paint方法总结(二):着色渲染器Shader
  16. Android binder
  17. 移植sqlite3到arm-linux上(AM3352)
  18. Excel 添加图片批注
  19. 【分享】我在名牌大学毕业后的经历
  20. JAVA里的空白\t\n\r分别代表什么?

热门文章

  1. bC技术绑定10讲②解读“bC双码关联”!
  2. 三方协议服务器不填,三方协议档案转寄地址可以不填吗
  3. 计算机属性中只有远程协助,使用Windows自带的远程协助功能解决电脑问题
  4. 用Meta标签代码让360双核浏览器默认极速模式打开网站不是兼容模式
  5. 阿里云聆听平台使用有感
  6. IMAP工作原理及特性/imap协议pop协议mail协议
  7. 2019,入职互联网公司的好时机,你抓住了没?
  8. uni-app触发点击事件
  9. 软件测试---沟通技能总结
  10. 直流电机驱动电路中L298与电机间二极管的作用