在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:NetEaseCoursesClient开源软件地址:https://gitee.com/cls1991/NetEaseCoursesClient开源软件介绍:NetEaseCoursesClient###客户端查询并观看网易公开课的视频####环境配置#####1.服务器基于python构建,requirements.txt文件列举出了依赖的python库#####2. 客户端界面搭建需要QT库的支持#####3.客户端与服务器交互的数据类型为json格式,服务器(python环境)有内置的json库,而客户端则需要第三方库的支持,这里选取的是jsoncpp,具体API可以自行上网查询#####4.客户端要模拟httpclient发送http请求,与服务器进行数据交互,这里选择用curl进行httpclient模拟,因此需要安装curl及curl-devel相关软件#####5.客户端播放器后台采用的是开源的mplayer,因此需要安装mplayer软件####目录说明####-*NetEaseCoursesClient/ --*crawler/---*lib/----showLinks.py: 处理http请求----crawler.py: 负责找到视频真实下载链接---*out/: 视频下载链接存储文件,用于测试---*server.py: 服务器启动文件---*main.py: 测试文件--*mplayer/:客户端界面布局文件,以及播放器逻辑控制代码--*pictures/:程序截图####使用说明:程序分为服务器和客户端两部分#####1.服务器:基于tornado的httpserver,启动服务,监听端口9001(当然,可以自定义端口号);通过不同的url转发到对应的RequestHandler处理,服务器启动指令如下所示:#####当然,可以直接通过浏览器发送http请求,查看服务器返回的数据,结果显示如下:#####2.客户端:基于QT框架,搜索网易公开课视频,模拟httpclient与服务器交互,并获取视频真实链接;至于视频播放,QT搭建的其实只是一个前端的mplayer壳,借助QProcess与后台的mplayer播放器传递控制命令,完成播放器的基本操作;######step1: 搜索######step2: 播放######step3: 音量调节######step4: 进度条####TODO#####1.客户端搜索条件改善,目前搜索源为视频在网易公开课上对应的网页url地址。以ios8为例,正常情况下用户输入ios8查询即可,这里,搜索条件其实是http://open.163.com/special/opencourse/ios8.html,因此程序还需要为用户选择搜索的网页集#####2.客户端搜索结果显示的是视频真实url,可以改进为视频缩略图以及视频信息显示的数据集合#####3.客户端需要添加视频缓冲动画,用于用户交互#####4.服务器需要添加搜索结果缓存,这样客户端直接从缓存拉取数据,而不是重新抓取网页,分析处理网页,可以省去不必要的服务器开销#####5.服务器搭建在本机上,局限性比较大,后期考虑租一台服务器,部署后台程序到远程服务器上,作为常驻进程 |
请发表评论