基于天天动听API开发在线音乐查询网站
预览图

源码下载
地址:https://github.com/bajdcc/dev/tree/master/ttpod
文件夹说明:
- App_Code,WCF服务
- Script,离线下载的celery任务配置
- dl,离线下载接口
- ttpod,网站主体
- Bin,组件类库
实现功能
- 基于天天动听实现输入提示、查询功能
- 列表显示每条曲目的信息,自带搜索和排序功能
- 实现网页播放,支持大部分部分的视频与音频,并提供下载地址
- 适配较新版本的IE、Firefox和Chrome浏览器
- 支持广播,即可以远程使多个浏览器同时播放视频与音频
- 支持离线,即可让服务器离线下载流媒体
技术细节
- 跨域代理,采用WCF(由于浏览器的安全机制,跨越访问是禁止的)
- 数据可视,采用jQuery DataTable,提供排序与搜索功能
- 在线下载,采用jQuery Dialog
- 离线下载,采用php+redis+celery+python,celery flower可用来监视下载情况
- 在线播放,采用CKPlayer(for video)+PeckPlayer(for audio)
- 在线广播,采用SignalR
- 浏览器兼容,采用jQuery+modernizr
技术问题
- WebSocket的支持问题,可能与IIS有关
- 播放视频时开关灯功能尚未实现
网站配置
配置要求:.NET 4.0,IIS,WCF服务,Python 2.7(离线需要),php支持(离线需要)
- 在IIS中激活WCF服务
- 新建网站,将除了Script以外的文件夹放到网站根目录下
- 如要配置离线功能,请先配置PHP组件(在IIS的Web平台安装程序中找到php组件,点击安装即可);下载Redis(https://code.google.com/p/servicestack/downloads/list),或使用Redis For Python(pip install redis);下载celery(pip install celery),可选下载flower(pip install flower);最后运行Script/run-download.cmd
- 启动网站
基于天天动听API开发在线音乐查询网站的更多相关文章
- 天天动听API
本次分析的是天天动听API,天天动听有一点比较好,就是搜索返回直接有歌曲播放的地址了,并且有无损的音频 搜索歌曲API:http://so.ard.iyyin.com/s/song_with_out? ...
- 播放器音乐源之天天动听API
搜索歌曲API:http://so.ard.iyyin.com/s/song_with_out?q={0}&page={1}&size={2} {0}=需要搜索的歌曲或歌手 {1}=查 ...
- 基于ArcGIS JS API的在线专题地图实现
0 引言 专题地图是突出而深入的表示一种或几种要素或现象,即按照地图主题的要求,集中表示与主题有关内容的地图.专题地图的专题要素多种多样,分类方法也多种多样,根据专题地图表现数据的特点可分为定 ...
- 基于微博LBS API开发的周边美图android app
[app 不完善,就差api了] 几年之前看到过新浪微博开放API中有基于Place的API,授权后可以查看基于地理位置的一些数据,比如某个地点周边的微博动态.某个具体用户的位置动态等等.最近空余时间 ...
- python 开发在线音乐播放器-简易版
在线音乐播放器,使用python的Tkinter库做了一个界面,感觉这个库使用起来还是挺方便的,音乐的数据来自网易云音乐的一个接口,通过urllib.urlopen模块打开网址,使用Json模块进行数 ...
- 基于 ArcGIS Silverlight API开发的WebGIS应用程序的部署
部署流程概述 在微软的iis服务器上部署基于ArcGIS Silverlight API的应用程序,主要包括以下几个步骤: 1)(可选)部署GIS服务 如果需要将GIS服务也部署在Web服务器上,则 ...
- Flex4/Flash开发在线音乐播放器 , 含演示地址
要求 必备知识 本文要求基本了解 Adobe Flex编程知识和JAVA基础知识. 开发环境 MyEclipse10/Flash Builder4.6/Flash Player11及以上 演示地址 演 ...
- 基于百度翻译API开发属于自己的翻译工具
你是否每天使用着网页翻译工具?你是否遇到过这种情况,上网过程中遇到一个很长的单词但是又不能复制,要开两个浏览器,一个打开百度翻译,照着另一个网页输入单词?你安装了各种翻译软件后,又删除,只因忍受不了那 ...
- android 基于百度地图api开发定位以及获取详细地址
一:百度地图开发必须要到百度开发平台android开发api下载相应的库,已经申请百度地图开发key. 二:新建项目baidumaplocation.设计main.xml文件这里注意的是MapView ...
随机推荐
- zjuoj 3606 Lazy Salesgirl
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3606 Lazy Salesgirl Time Limit: 5 Secon ...
- Git 一些关于 Git、Github 的学习资源
一些关于 Git.Github 的学习资源 昨天浏览 Github 的是时候发现了 Githug 这个游戏,这个游戏用来帮助菜鸟们学习使用 Git 的. Githug is designed to g ...
- 理解NDCG
关于NDCG,wiki给点解释很详细,这里我谈谈我的理解. NDCG(Normalized discounted cumulative gain):是用来衡量排序质量的指标. 其中一种计算公式如下: ...
- Bug测试报告--在线考试系统--金州勇士
项目名:在线考试系统 组名:金州勇士 测试者:宫丽君(nice!团队) 代码地址: ssh:git@git.coding.net:handsomeman/examm.git https://g ...
- c3p0数据库连接池使用
- Hadoop实战5:MapReduce编程-WordCount统计单词个数-eclipse-java-windows环境
Hadoop研发在java环境的拓展 一 背景 由于一直使用hadoop streaming形式编写mapreduce程序,所以目前的hadoop程序局限于python语言.下面为了拓展java语言研 ...
- php中rsa加密及解密和签名及验签
加密的内容长度限制为密钥长度少位,如位的密钥最多加密的内容为个长度. 公钥加密 $public_content=file_get_contents(公钥路径); $public_key=openssl ...
- TCP/IP 协议介绍
转自http://blog.jobbole.com/104886/ 一.TCP/IP 协议介绍 在介绍 HTTP 协议之前,先简单说一下TCP/IP协议的相关内容.TCP/IP协议是分层的,从底层至应 ...
- ASP值view State
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...
- fork &vfork --陈皓
http://coolshell.cn/articles/7965.html http://coolshell.cn/articles/12103.html#more-12103 前两天有人问了个关于 ...