php获取视频信息,支持优酷土豆新浪腾讯等多家网站

2024-02-11 13:58

本文主要是介绍php获取视频信息,支持优酷土豆新浪腾讯等多家网站,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

video.php类

<?php
/**
*	解析 视频信息 类
*
*	支持 优酷, 土豆 酷6 56 新浪 qq播客 乐视 乐视
**/class class_video{// 超时时间var $timeout = 5;/***	解析视频**	1 参数 url 地址**	返回值 数组 or false**/function parse( $url ) {$arr = parse_url( $url );if ( empty( $arr['host'] ) ) {return false;}$host = strtolower( preg_replace( '/.*(?:$|\.)(\w+(?:\.(?:com|net|org|co|info)){0,1}\.[a-z]+)$/iU', '$1', $arr['host'] ) );if ( $host == 'youku.com' ) {return $this->youku( $url );}if ( $host == 'tudou.com' ) {return $this->tudou( $url );}if ( $host == 'ku6.com' ) {return $this->ku6( $url );}if ( $host == '56.com' ) {return $this->_56( $url );}if ( $host == 'sina.com.cn' ) {return $this->sina( $url );}if ( $host == 'qq.com' ) {return $this->qq( $url );}if ( $host == 'letv.com' ) {return $this->letv( $url );}if ( $host == 'sohu.com' ) {return $this->sohu( $url );}return false;}/***	优酷的**	1 参数 vid or url**	返回值 false array**/function youku( $vid ) {	if ( !$vid ) {return false;}if ( !preg_match( '/^[0-9a-z_-]+$/i', $vid ) ) {if ( !preg_match( '/^http\:\/\/v\.youku\.com\/v_show\/id_([0-9a-z_-]+)/i', $vid, $match ) && !preg_match( '/^http\:\/\/player\.youku\.com\/player\.php[0-9a-z\/_-]*\/sid\/([0-9a-z_-]+)/i', $vid, $match ) ) {return false;}$vid = $match[1];}$url = 'http://v.youku.com/player/getPlayList/VideoIDS/' . $vid;if ( !$json = $this->url( $url ) ) {return false;}if ( !$json = @json_decode( $json, true ) ) {return false;}if ( empty( $json['data'][0] ) ) {return false;}$json = $json['data'][0];$r['vid'] = $json['vidEncoded'];$r['url'] = 'http://v.youku.com/v_show/id_'. $json['vidEncoded'] .'.html?f=http://www.lianyue.org/';$r['swf'] = 'http://player.youku.com/player.php/sid/'. $json['vidEncoded'] .'/lianyue.swf';$r['title'] = $json['title'];$r['img']['large'] = $json['logo'];$r['img']['small'] = str_replace( '.com/11', '.com/01', $json['logo'] );$r['time'] = $json['seconds'];$r['tag'] = $json['tags'];return $r;}/***	土豆的**	1 参数 vid or url**	返回值 false array**/function tudou( $vid ) {if ( !$vid ) {return false;}if ( !preg_match( '/^[0-9a-z_-]+$/i', $vid ) ) {if ( !preg_match( '/^http\:\/\/www\.tudou\.com\/programs\/view\/([0-9a-z_-]+)/i', $vid, $match ) && !preg_match( '/^http\:\/\/www\.tudou\.com\/v\/([0-9a-z_-]+)/i', $vid, $match ) && !preg_match( '/^http\:\/\/www\.tudou\.com\/(?:listplay|albumplay)\/[0-9a-z_-]+\/([0-9a-z_-]+)/i', $vid, $match ) && !preg_match( '/^http\:\/\/www\.tudou\.com\/(?:a|l)\/[0-9a-z_-]+\/.+iid\=(\d+)/i', $vid, $match ) ) {return false;}$vid = $match[1];}$url = 'http://www.tudou.com/v/'. $vid .'/v.swf';$this->url( $url, $header );if( empty( $header['Location'] ) ) {return false;}$parse = parse_url( $header['Location'] );if ( empty( $parse['query'] ) ) {return false;}$this->parse_str( $parse['query'], $arr );if ( empty( $arr['snap_pic'] ) ) {return false;}$r['vid'] = $arr['code'];$r['url'] = 'http://www.tudou.com/programs/view/'. $arr['code'] .'/?FR=http://www.lianyue.org/';$r['swf'] = 'http://www.tudou.com/v/'. $arr['code'] .'/lianyue.swf';$r['title'] = $arr['title'];$r['img']['large'] = $arr['snap_pic'];$r['img']['small'] = str_replace( array( '/w.jpg', 'ykimg.com/11' ), array( '/p.jpg', 'ykimg.com/01' ), $arr['snap_pic'] );$r['time'] = $arr['totalTime'] / 1000;$r['tag'] = empty( $arr['tag'] ) || $arr['tag'] == 'null' ? array() : $this->array_unempty( explode( ',', $arr['tag'] ) );return $r;}/***	酷 6 的**	1 参数 vid or url**	很老的视频某些 没大图*	返回值 false array**/function ku6( $vid ) {if ( !$vid ) {return false;}if ( !preg_match( '/^[0-9a-z_-]+\.{0,2}$/i', $vid ) ) {if ( !preg_match( '/^http\:\/\/v\.ku6\.com\/show\/([0-9a-z_-]+)/i', $vid, $match ) && !preg_match( '/^http\:\/\/player\.ku6\.com\/refer\/([0-9a-z_-]+)/i', $vid, $match ) && !preg_match( '/^http\:\/\/v\.ku6\.com\/special\/show_\d+\/([0-9a-z_-]+)/i', $vid, $match ) ) {return false;}$vid = $match[1];}$vid = preg_replace( '/^([0-9a-z_-]+)\.*$/i', '$1..', $vid );if ( !$json = $this->url( 'http://v.ku6.com/fetchVideo4Player/'. $vid .'.html' ) ) {return false;}if ( !$json = @json_decode( $json, true ) ) {return false;}if ( empty( $json['data']['picpath'] ) ) {return false;}$json = $json['data'];$json['vtime'] = explode( ',', $json['vtime'] );$r['vid'] = $vid;$r['url'] = 'http://v.ku6.com/show/'. $vid .'.h

这篇关于php获取视频信息,支持优酷土豆新浪腾讯等多家网站的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/699967

相关文章

公共筛选组件(二次封装antd)支持代码提示

如果项目是基于antd组件库为基础搭建,可使用此公共筛选组件 使用到的库 npm i antdnpm i lodash-esnpm i @types/lodash-es -D /components/CommonSearch index.tsx import React from 'react';import { Button, Card, Form } from 'antd'

(超详细)YOLOV7改进-Soft-NMS(支持多种IoU变种选择)

1.在until/general.py文件最后加上下面代码 2.在general.py里面找到这代码,修改这两个地方 3.之后直接运行即可

通过高德api查询所有店铺地址信息

通过高德api查询所有店铺地址电话信息 需求:通过高德api查询所有店铺地址信息需求分析具体实现1、申请高德appkey2、下载types city 字典值3、具体代码调用 需求:通过高德api查询所有店铺地址信息 需求分析 查询现有高德api发现现有接口关键字搜索API服务地址: https://developer.amap.com/api/webservice/gui

百度OCR识别结构结构化处理视频

https://edu.csdn.net/course/detail/10506

【青龙面板辅助】JD商品自动给好评获取京豆脚本

1.打开链接 开下面的链接进入待评价商品页面 https://club.jd.com/myJdcomments/myJdcomments.action?sort=0 2.登陆后执行脚本 登陆后,按F12键,选择console,复制粘贴以下代码,先运行脚本1,再运行脚本2 脚本1代码 可以自行修改评价内容。 var content = '材质很好,质量也不错,到货也很快物流满分,包装快递满

相关网站

力扣  https://leetcode-cn.com/contest/weekly-contest-124

【文末附gpt升级秘笈】腾讯元宝AI搜索解析能力升级:千万字超长文处理的新里程碑

腾讯元宝AI搜索解析能力升级:千万字超长文处理的新里程碑 一、引言 随着人工智能技术的飞速发展,自然语言处理(NLP)和机器学习(ML)在各行各业的应用日益广泛。其中,AI搜索解析能力作为信息检索和知识抽取的核心技术,受到了广泛的关注和研究。腾讯作为互联网行业的领军企业,其在AI领域的探索和创新一直走在前列。近日,腾讯旗下的AI大模型应用——腾讯元宝,迎来了1.1.7版本的升级,新版本在AI搜

PHP的基本语法有哪些?

PHP的基本语法包括以下几个方面: PHP标记:PHP脚本以<?php开始,以?>结束。这是PHP文件的默认文件扩展名是.php。 变量和常量:变量以$符号开头,其后是变量的名称。常量使用define()函数定义,例如define("常量名", 常量值);。 数据类型:PHP支持多种数据类型,如整型、浮点型、字符串型等。 注释:PHP支持单行注释(用//表示)和多行注释(用/* */表示

HTML5文旅文化旅游网站模板源码

文章目录 1.设计来源文旅宣传1.1 登录界面演示1.2 注册界面演示1.3 首页界面演示1.4 文旅之行界面演示1.5 文旅之行文章内容界面演示1.6 关于我们界面演示1.7 文旅博客界面演示1.8 文旅博客文章内容界面演示1.9 联系我们界面演示 2.效果和源码2.1 动态效果2.2 源代码2.3 源码目录 源码下载万套模板,程序开发,在线开发,在线沟通 作者:xcLeigh