1、前端方法!

首先复制一个连接!就你上传腾讯视频的url,注意不要拿那种电影啊之类的试! 那种获取不到的!  要拿别人上传的!或者自己上传的试!

取,最后一个/和.html中间内容!后面我又直接写好jsvar url = 'https://v.qq.com/x/page/f0925rpowb2.html';

然后打开nginx,配置域名转发,不然会跨域location ^~ /tengxun/ {

proxy_pass http://vv.video.qq.com/; # 转发地址

}

把tengxun开头的转发到腾讯去

然后在直接get请求!

完整源码和注释

可选值有sd(标清)、hd(高清)、shd(超清)、fhd(1080P)html>

完整的demo

//你复制的地址

var url = 'https://v.qq.com/x/page/f0925rpowb2.html';

let vids = url.match(/\/([^/]*)$/)[1].replace('.html', '');

async function aa() { //这个函数主要为了同步

let s = ''

// 或者可以直接打开同步,就不用async进行同步了了!

//  $.ajaxSettings.async = false;

// http://vv.video.qq.com/getinfo?vids=f0925rpowb2&platform=101001&charge=0&otype=json 这个是真实的请求地址,直接请求会报错!

await $.get("/tengxun/getinfo?vids=" + vids + "&platform=101001&charge=0&otype=json", function(result) {

let str = result.replace('QZOutputJson=', '')

let strs = str.replace(/[;?]$/, '')

var obj = JSON.parse(strs);

s = obj.vl.vi[0].ul.ui[0].url + obj.vl.vi[0].fn + '?vkey=' + obj.vl.vi[0].fvkey

})

return s

}

aa().then(res => {

console.log(res)

url = res

});

值得注意的是!腾讯的key会不断的变化,所以需要定期更新key,如果内容是输入数据库的! 那就没必要用上面那种了!

2、后端方法

一、ajax请求方法,传个腾讯url即可!<?php

$url=$_GET['url'];

if(empty($url)){

$result =array('code'=>500);

echo json_encode($result);//返回数据

exit();

}

$link_array = explode('/',$url);

$vid = explode('.',end($link_array))[0];

$urls = 'http://vv.video.qq.com/getinfo?vids='.$vid.'&platform=101001&charge=0&otype=json&defn=shd';

$json = file_get_contents($urls);

preg_match('/^QZOutputJson=(.*?);$/',$json,$json2);

$tempStr = json_decode($json2[1],true);

$vurl = $tempStr['vl']['vi'][0]['ul']['ui'][0]['url'].$tempStr['vl']['vi'][0]['fn']."?vkey=".$tempStr['vl']['vi'][0]['fvkey'];

$result =array('code'=>200,'result'=>$vurl);

echo json_encode($result);//返回数据

exit();

?>

二、全文匹配腾讯Url,然后进行查找腾讯url,进行替换为video

用php方法,先定义方法if(!function_exists('replacevideo')){

function replacevideo($str){

preg_match_all('/((http|ftp|https):\/\/)(?=.*(qq\.com))([\w_-]+(?:(?:\.[\w_-]+)+))+([\w.,@?^=%&:\/~+#-]*[\w@?^=%&\/~+#-])?/',$str,$arr);

if(!$arr[0]){

return $str;

}

$replaceOnce = function($needle,$replace,$haystack){

$pos = strpos($haystack, $needle);//查找出现的位置

if($pos===false){return $haystack;}//查不到就放弃

return substr_replace($haystack,$replace,$pos,strlen($needle)); // 查找替换和$needle长度的字符

};

$reolaceqq = function($url){

$link_array = explode('/',$url);

$vid = explode('.',end($link_array))[0];

$urls = 'http://vv.video.qq.com/getinfo?vids='.$vid.'&platform=101001&charge=0&otype=json&defn=shd';

$json = file_get_contents($urls);

preg_match('/^QZOutputJson=(.*?);$/',$json,$json2);

$tempStr = json_decode($json2[1],true);

$vurl = $tempStr['vl']['vi'][0]['ul']['ui'][0]['url'].$tempStr['vl']['vi'][0]['fn']."?vkey=".$tempStr['vl']['vi'][0]['fvkey'];

if($vurl){

$video="";

return  $video;

}else{

return $url;

}

};

$_tmp = [];

foreach($arr[0] as $v){

$tmp = explode($v,$str);//把$v前后分成2段

$_tmp[]=$tmp[0];//叠加起始段

$_tmp[]=$reolaceqq($v); // 匹配到的字符串段

$str = $replaceOnce($tmp[0].$v,'',$str); //把起始段和匹配到的字符发过去替换为空

}

return join($_tmp,'').$str;

}

}

使用$str = "你好.aa='https://v.qq.com/x/page/f0925rpowb2.html哈哈https://vs.qq.com/x/page/f0925rpowb22.html哒http://write.blog.csdn.net/post嗯嗯baidu.com aa";

$a=replacevideo($str);

echo $a;

html5调用腾讯视频,小程序h5获取腾讯视频的真实mp4地址video!【前端+后端方法】...相关推荐

  1. 小程序源码:修复版薅羊毛拼团商城前端+后端

    1.怎么玩? 多人拼团,部分人获得得商品,没获得商品的人退款并瓜分红包,红包佣金从获得商品的人的订单利润里返. 2.参与拼团的人需要支付多少钱? 每个人需要支付商品规定的卖价金额,一元购模式的大家分担 ...

  2. 小程序源码:登录已修复零象垃圾废品回收微信小程序源码下载,V2.8.2完整全开源前端+后端

    零象垃圾废品回收小程序源码,V2.8.2完整全开源安装包+小程序前端, 是一款专注于垃圾回收小程序源码,支持协议定期企业废品回收,垃圾分类小区物业定期回收. 关于程序 运行环境:微擎+PHP+MYSQ ...

  3. 曼格短视频小程序V1.8.5版本完整源码

    介绍: 此款小程序适用范围,曼格短视频小程序.曼格短视频.短视频小程序.视频小程序.微信小程序,亲测无错可运营. 程序源码介绍: 1.新增自定义界面颜色,你的地盘你做主,不要再担心"撞衫&q ...

  4. 运营版uniapp多商户商城小程序+H5+APP+商家入驻短视频社区种草直播阶梯拼团

    运营版uniapp多商户商城小程序+H5+APP+商家入驻短视频社区种草直播阶梯拼团 前后端全套源码, 支持二次开发,代码无加密! 独立商家后台 用于店铺商品管理订单管理发货管理等 多类经营模式 多商 ...

  5. 微信小程序如何播放腾讯视频?

    popper小P 微信小程序如何播放腾讯视频? 1.背景 因为当时需要做视频播放,后台存放视频文件又不现实.所以,做了一个能解析腾讯视频地址的并播放视频的小程序. 2.介绍 小程序里的解析腾讯视频地址 ...

  6. 实时视频直播客户端技术盘点:Native、HTML5、WebRTC、微信小程序

    1.视频直播客户端技术之Native APP 原生 APP 终端音视频引擎的结构框图如下,基本包括了音频引擎.视频引擎和网络传输,合称实时语音视频终端引擎.这里还包含底层的音视频采集和渲染,还有网络的 ...

  7. 手牵手,使用uni-app从零开发一款视频小程序 (系列上 准备工作篇)

    系列文章 手牵手,使用uni-app从零开发一款视频小程序 (系列上 准备工作篇) 手牵手,使用uni-app从零开发一款视频小程序 (系列下 开发实战篇) 前言 好久不见,很久没更新博客了,前段时间 ...

  8. 微信小程序微信公众号支付宝小程序H5(获取信息用户信息,支付,分享,人脸识别)

    文章目录 一.微信小程序 1. 获取信息用户信息 2.支付 3.分享 4. 腾讯云小程序人脸核身 二.微信公众号 1.获取信息用户信息 2.支付 3. 分享(普通分享) 4.分享(vue单页面 配置分 ...

  9. “小程序+直播”怎样搅动音视频技术生态?

    ​ 责编 / 王宇豪 策划 / LiveVideoStack 12月26日晚间,微信小程序开放了直播能力,并首先向社交.教育.医疗.政务民生.金融等五大应用场景开放.与原生App应用和基于浏览器的H5 ...

最新文章

  1. SWIG和PInvoke学习(1)
  2. Shell编程进阶 1.7 case选择
  3. 《数据库原理与应用(第3版)》——小结
  4. 谈谈JavaScript中编程实现以及使用内置方法实现进制转换
  5. 网络资源-深入剖析Binding2(学习)
  6. 数学建模学习笔记(四)——拟合算法
  7. 新书进展和我的决定。
  8. 倒序查10条数据_餐饮业总营收增量七成由外卖拉动,天眼查数据显示今年我国新增相关企业超10万家...
  9. NB-IoT---(0) NB-IoT技术
  10. 3.4K字,让老板对你的模型稳定性不再质疑
  11. PHP的分页原理和简单实例
  12. [转载] 【Python】range()、np.arange()、np.linspace()、np.logspace()的使用和区别
  13. 关于大型网站技术演进的思考(十)--网站静态化处理—动静整合方案(2)
  14. 【西北师大-2108Java】第二次作业成绩汇总
  15. rnn 循环神经网络
  16. python爬虫post请求翻页_python爬虫如何POST request payload形式的请求
  17. Java JVM 动态方法调用指令 invokedynamic 实现分析(以 Lambda 表达式实现原理为例)...
  18. GPRC 和RPC 有什么区别?GPRC和RPC的区别是什么?
  19. 如何避免开车视觉盲区
  20. dz3.2火车头 php接口,DiscuzX3.4论坛火车头采集器免登陆发布模块(带测试接口)-百度云...

热门文章

  1. 日计划安排 --- 凡事预则立,不预则废
  2. 数据结构与算法--哈夫曼树应用
  3. 广告屏蔽案件的中美相关司法实践初探
  4. 跟sky学数字IC/FPGA设计学习培训课程:全集已出
  5. ITFriend网站内测公测感悟
  6. Formality简单实用之1--RTLvsRTL
  7. metasploit关闭杀毒软件
  8. 【100 种语言速成】第 4 节:Lua
  9. 前端项目添加自定义icont图标步骤
  10. 清北学堂模拟赛d3t6 c