Home  >  Article  >  Backend Development  >  PHP obtains the Flash playback address in major video website pages_PHP tutorial

PHP obtains the Flash playback address in major video website pages_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 10:43:481194browse

Many friends who make movie websites directly use the flash playback addresses of major video websites. In this way, if we do not affect our own web servers, the editor below will introduce to you how to use PHP to obtain the content in the pages of major video websites. Flash playback address example.

Let’s look at a simple one first

Then I implemented this function using PHP. I think it is a pleasure to use PHP to do this work! Using the powerful HTML page processing functions and regular expressions it provides, you can accomplish this function in just a few lines of code.

Paste the key code:

The code is as follows Copy code
 代码如下 复制代码

//获取优酷页面中的flash地址
function get_flash_url( $url )
{
$lines = file($url);
foreach ($lines as $linenum=> $line) {      
      preg_match_all('||',$line,$result);
      $swfurl=$result[1][0];
      if(!empty($swfurl))
    return $swfurl;
  }
 }
?>

$url=$_SERVER["QUERY_STRING"];

$flashurl= get_flash_url($url);

echo ( $flashurl );

?>

//Get the flash address in Youku page
function get_flash_url( $url )
{
$lines = file($url);
foreach ($lines as $linenum=> $line) {
Preg_match_all('||',$line,$result);
$swfurl=$result[1][0];
If(!empty($swfurl))
Return $swfurl;
}
}
?>

$url=$_SERVER["QUERY_STRING"];

$flashurl= get_flash_url($url);

echo ( $flashurl );

?>
 代码如下 复制代码

flash地址:

For example, if we save this file as test.php, then we only need to run test.php?Youku video url to parse the FLASH address. The idea is very simple, that is, first look at the characteristics of the key FLASH address in the HTML code of the Youku video page. Find any web page, for example we can see this paragraph:
The code is as follows Copy code
flash address:

Then use regular expressions to match the address segments, and it will be OK. The above is just a single one. Later, I found an upgrade method that can automatically obtain the flash video playback address of major video websites.

Currently, it supports video play page links of Sina Podcast, Youku, Tudou, Ku6.com, Sohu Video, 56.com, Qiyi.com, Phoenix.com and other video websites.

The code is as follows Copy code
if (!empty($_GET['url']))
{
$web_video = new free_flash_video();
$web_video->index();
}
/**
* Get video address
* @author qiufeng
* @link http://www.fengdingbo.com
*
​*/
class free_flash_video{

public function index()
{
// Get the normal video address
$url = $_GET['url'];
if ($url)
{
$parse = parse_url($url);

isset($parse['host']) && $host = $parse['host'];

$methods = array(
"www.tudou.com" => "tudou",
"v.youku.com" => "youku",
"v.ku6.com" => "ku6",
"tv.sohu.com" => "sohu",
"video.sina.com.cn" => "sina",
"www.56.com" => "five_six",
"www.iqiyi.com" => "iqiyi",
"v.ifeng.com" => "ifeng",
"www.yinyuetai.com" => "yinyuetai",
);

isset($methods[$host]) && print_r($this->$methods[$host]($url));

}
}

/**
* Youku
* // http://www.youku.com
* @param string $url
​*/
private function youku($url)
{
preg_match('/id_(.*).html/', $url,$url);

if (isset($url[1]))
{
Return "http://static.youku.com/v/swf/qplayer.swf?VideoIDS={$url[1]}&=&isAutoPlay=true&embedid";
}
}

/**
* Tudou
* // http://www.tudou.com
* @param string $url
​*/
private function tudou($url)
{
$data = file_get_contents($url);
//The iid number required to match the real url address

preg_match('/iid:(.*)/', $data, $result);
if (isset($result[1]))
{
$url = trim($result[1]);
Return "http://www.tudou.com/player/skin/plu.swf?iid={$url}";
}
}

/**
* Cool 6 Network
* // http://www.ku6.com
* @param string $url
​*/
private function ku6($url)
{
// Match the real url address
preg_match('/show/(.*).{1}/', $url, $result);

if (isset($result[1]))
{
Return "http://player.ku6.com/refer/{$result[1]}/v.swf&auto=1";
}
}

/**
* Sohu Video
* // http://tv.sohu.com
* @param string $url
​*/
private function sohu($url)
{
$data = file_get_contents($url);
// Match the real url address
preg_match('//', $data, $result);
if (isset($result[1]))
{
Return $result[1];
}
}

/**
* Sina Podcast
* // http://video.sina.com.cn
* @param string $url
​*/
private function sina($url)
{
$data = file_get_contents($url);
// Match the real url address
preg_match("/swfOutsideUrl:'(.*)',/", $data, $result);
if (isset($result[1]))
{
Return $result[1];
}
}

/**
  * 56网
  * // http://www.56.com
  * @param string $url
 */
private function five_six($url)
{
// Get the key required for the video
preg_match('/(v_.*).html/', $url, $result);

if (isset($result[1]))
{
Return "http://player.56.com/{$result[1]}.swf";
}
}

/**
* Qiyi.com
* // http://www.qiyi.com
* @param string $url
​*/
private function iqiyi($url)
{
$data = file_get_contents($url);

// Get the key required for the video
preg_match('/("videoId":"(.*)")|(data-player-videoid="(.*)")/U', $data, $result);

if (isset($result[4]))
{
Return "http://www.iqiyi.com/player/20130315154043/SharePlayer.swf?vid={$result[4]}";
}
}

/**
* ifeng.com
* // http://www.ifeng.com
* @param string $url
​*/
private function ifeng($url)
{
// Get the key required for the video
preg_match('/d+/(.*)./', $url, $result);

if (isset($result[1]))
{
Return "http://v.ifeng.com/include/exterior.swf?guid={$result[1]}&fromweb=sinaweibo&AutoPlay=true";
}
}
}
?>

PHP API call example

The code is as follows
 代码如下 复制代码

/tools/web_video.php?url=视频页面地址
eg:/web_video.php?url=http://www.iqiyi.com/dianying/20130217/e72ffd87c2e9c5af.html

Copy code
/tools/web_video.php?url=Video page address eg:/web_video.php?url=http://www.iqiyi.com/dianying/20130217/e72ffd87c2e9c5af.html

http://www.bkjia.com/PHPjc/633152.htmlwww.bkjia.com
truehttp: //www.bkjia.com/PHPjc/633152.html
TechArticleMany friends who make movie websites directly use the flash playback address of big video websites, so if we don’t Go to your own network server, let me introduce to you how to use PH...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn