我是php新手,我正面临这个问题。需要一些帮助来匹配youtube视图preg_match。 发布的以下代码是我为preg匹配所做的代码,但这些代码不起作用。任何人都可以帮助我。
if($row['type']=="Views"){
$data = $row['data'];
$type = "YouTube Views";
//INSTAGRAM
$file = @file_get_contents($data);
preg_match('/\"watch-view-count":(.*?)\,/',$file,$mfc);
$ccnt = $mfc[1];
//INSTAGRAM
}
if($row['type']=="Views"){
$data = $row['data'];
$type = "YouTube Views";
//Views
$file = @file_get_contents($data) or die("YouTube Offline ? :/");
preg_match('/\"watch-view-count":(.*?)\,/',$file,$mfc);
$ccnt = $mfc[1];
$ data = http://www.youtube.com/watch?v=BPmhFrwDJTo 我需要preg_match来获取youtube视频中当前的视图数量。对于糟糕的语法,我真的很抱歉。
答案 0 :(得分:0)
Don't使用正则表达式来解析HTML。请改用DOM Parser。它会更有效率。
在这种情况下,您可以简单地使用Youtube API:
<?php
$video_ID = 'BPmhFrwDJTo';
$JSON = file_get_contents("https://gdata.youtube.com/feeds/api/videos/{$video_ID}?v=2&alt=json");
$JSON_Data = json_decode($JSON);
$views = $JSON_Data->{'entry'}->{'yt$statistics'}->{'viewCount'};
echo $views.' views';
?>
输出:
7 views