CuDemVN.Wap.Sh



![]() | ![]() ![]() ![]() |
Có rất nhiều bạn muốn download video từ Facebook nhưng không có cách nào. Vì thế hôm nay mình sẽ share cho các bạn code get link video facebook được mong đợi nhất hỗ trợ tới 3 dạng URL video
Hôm nay mình xin hướng dẫn cách get link video facebook bằng cURL, code được tích hợp trên nền bootstrap, dùng cURL nên tốc độ rất nhanh, 3 dạng URL hỗ trợ get đó là:
1. https://www.facebook.com/userName/videos/IDvideo
2. https://www.facebook.com/video.php?v=IDvideo
3. https://www.facebook.com/userName/videos/vb.IDuser/IDvideo/?type=2&theater
bạn có thể tha hồ down video từ Facebook về máy nhé.
→demo get link video facebook online:

Function cURL
Vì sử dụng hàm cURL nên chúng ta không thể thiếu hàm cURL rồi:
<?php
function curl($url) {
$ch = @curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
$head[] = "Connection: keep-alive";
$head[] = "Keep-Alive: 300";
$head[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7";
$head[] = "Accept-Language: en-us,en;q=0.5";
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.124 Safari/537.36');
curl_setopt($ch, CURLOPT_ENCODING, '');
curl_setopt($ch, CURLOPT_HTTPHEADER, $head);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Expect:'
));
$page = curl_exec($ch);
curl_close($ch);
return $page;
}
?>
Function getFacebook
Có funtion curl rồi giờ chúng ta đến function getFacebook:
<?php
function getFacebook($link){
if(substr($link, -1) != '/' && is_numeric(substr($link, -1))){
$link = $link.'/';
}
preg_match('/https:\/\/www.facebook.com\/(.*)\/videos\/(.*)\/(.*)\/(.*)/U', $link, $id); // link dạng https://www.facebook.com/userName/videos/vb.IDuser/IDvideo/?type=2&theater
if(isset($id[4])){
$idVideo = $id[3];
}else{
preg_match('/https:\/\/www.facebook.com\/(.*)\/videos\/(.*)\/(.*)/U', $link, $id); // link dạng https://www.facebook.com/userName/videos/IDvideo
if(isset($id[3])){
$idVideo = $id[2];
}else{
preg_match('/https:\/\/www.facebook.com\/video\.php\?v\=(.*)/', $link, $id); // link dạng https://www.facebook.com/video.php?v=IDvideo
$idVideo = $id[1];
$idVideo = substr($idVideo, 0, -1);
}
}
$embed = 'https://www.facebook.com/video/embed?video_id='.$idVideo; // đưa link về dạng embed
$get = curl($embed);
$data = explode('[["params","', $get); // tách chuỗi [["params"," thành mảng
$data = explode('"],["', $data[1]); // tách chuỗi "],[" thành mảng
$data = str_replace(
array('\u00257B','\u00257D', '\u002522', '\u00253A', '\u00252C', '\u00255B', '\u00255D','\u00255C\u00252F', '\u00252F', '\u00253F', '\u00253D', '\u002526'),
array('{', '}', '"', ':', ',', '[', ']','\/', '/', '?', '=', '&'),
$data[0]
); // thay thế các ký tự mã hóa thành ký tự đặc biệt
//Link HD
$HD = explode('[{"hd_src":"', $data);
$HD = explode('","', $HD[1]);
$HD = str_replace('\/', '/', $HD[0]);
//Link SD
$SD = explode('"sd_src":"', $data);
$SD = explode('","', $SD[1]);
$SD = str_replace('\/', '/', $SD[0]);
$linkDownload = array();
if($HD){
$linkDownload['HD'] = $HD; // link download HD
}
if($SD){
$linkDownload['SD'] = $SD; // link download SD
}
//$imageVideo = 'https://graph.facebook.com/'.$idVideo.'/picture'; // get ảnh thumbnail
//$linkVideo = array_values($linkDownload);
//$return['linkVideo'] = $linkVideo[0]; // link video có độ phân giải lớn nhất
//$return['imageVideo'] = $imageVideo; // ảnh thumb của video
//$return['linkDownload'] = $linkDownload; // link download video
return $linkDownload;
}
?>
Hàm này sẽ trả về 1 mảng chứa image thumbnail của video, 1 link có độ phân giải lớn nhất, và tất cả link (HD, SD) của video. Mình đã giải thích code ở từng dòng rồi, thật đơn giản phải không nào.
Cách dùng Function get link video Facebook
Cách dùng thì đơn giản rồi, bạn chỉ cần copy link bỏ vào function là được thôi
<?php
$getFacebook= getFacebook($link);
if($getFacebook){
echo "Link ảnh: ".$getFacebook['imageVideo'];
echo "Link download: ";
print_r($getFacebook['linkDownload']);
}
?>
$getFacebook= getFacebook($link);
if($getFacebook){
echo "Link ảnh: ".$getFacebook['imageVideo'];
echo "Link download: ";
print_r($getFacebook['linkDownload']);
}
?>
Trên đây là hướng dẫn cách get link video facebook cơ bản, tập tin đầy đủ như trên demo

Chúc các bạn thành công!
Nguồn: Hải Long - BlogIT.Vn
↓ Tập tin Đính kèm ↓

Đánh giá: 4.5/ 5, 5033 bình chọn
