XtGem Forum catalog

CuDemVN.Wap.Sh

- GetSmile.Mobie.In - Diễn đàn chia sẻ Cú đêm Việt Nam
- AiChat.Wap.Sh - Diễn đàn Xtgem Việt Nam
- HamTruyen.Xtgem.Com - Blog Ham Truyện nơi hội tụ của những tín đồ mê truyện chữ
* Trang chủ >> WapMaster
Tìm Kiếm Thảo Luận
↓↓

Hướng dẫn dùng cURL và PHP để viết code Get link video Youtube full định dạng SD và HD

Admin* RoSino18k *
* 09-04-2016

Nằm trong loạt bài hướng dẫn get link, ở bài trước mình đã *share code get link video facebook và mới đây là *code rss grab video youtube hôm nay mình sẽ tiếp tục hướng dẫn get full link video youtube bằng PHP các định dạng mp4 HD 720, FLV, 3GP.. mong rằng sẽ giúp các bạn hiểu được phần nào nguyên lí của những code get link này. vui


Ở bài viết này mình sẽ đưa ra những function sẽ giúp các bạn view source, lấy ID video và cuối cùng là get ra link video

Hướng dẫn dùng cURL và PHP để viết code Get link video Youtube full định dạng SD và HD
[Tải ảnh]


Trước khi đi vào hướng dẫn bạn hãy xem thử demo get link video youtube đã nhé.

→demo: *http://demo.blogit.vn/youtube-get-video

Hướng dẫn viết code PHP Get link video Youtube
- Đầu tiên bạn phải có function cURL để phục vụ mục đích lấy source code
<?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_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;
}
?>

- Tiếp theo chúng ta sẽ cần một function để lấy ra ID của video qua URL
Ví dụ URL video của bạn có dạng:
https://m.youtube.com/watch?v=1Zn4L7vi9gg

thì 1Zn4L7vi9gg chính là ID của video đó. Code PHP Get ID video như sau:
<?php
function getIdYoutube($link){
preg_match("#(?<=v=)[a-zA-Z0-9-]+(?=&)|(?<=v\/)[^&\n]+(?=\?)|(?<=v=)[^&\n]+|(?<=youtu.be/)[^&\n]+#", $link, $id);
if(!empty($id)) {
return $id = $id[0];
}
return $link;
}
?>

- Đây là function quan trọng nhất trong get link video facebook sẽ tạo ra 1 mảng các phần tử là từng loại video youtube
<?php
function getVideoYoutube($link) {
$id = getIdYoutube($link);
$getlink = "https://www.youtube.com/watch?v=".$id;
if ($get = curl($getlink )) {
$return = array();
if (preg_match('/;ytplayer\.config\s*=\s*({.*?});/', $get, $data)) {
$jsonData = json_decode($data[1], true);
$streamMap = $jsonData['args']['url_encoded_fmt_stream_map'];
foreach (explode(',', $streamMap) as $url)
{
$url = str_replace('\u0026', '&', $url);
$url = urldecode($url);
parse_str($url, $data);
$dataURL = $data['url'];
unset($data['url']);
$return[$data['quality']."-".$data['itag']] = $dataURL.'&'.urldecode(http_build_query($data));
}
}
return $return;
}else{
return 0;
}
}
?>

- Bước cuối cùng khá đơn giản nhưng như đã nói ở trên - dữ liệu tạo ra dạng mảng nên khi bạn echo ra thì sẽ trắng trang. Ta sẽ sử dụng print_r() nhé
<?php
echo '<pre>';
print_r(getVideoYoutube('https://www.youtube.com/watch?v=KjuGYC88CA8'));
echo '</pre>';
?>

Bạn có thể điền link Youtube hoặc ID của video vào function getVideoYoutube($link) là nó sẽ trả về một mảng chứa tất cả các link SD, HD của video đó rồi. Chúc các bạn thành công!

→Bonus: *Hướng dẫn lấy 4 ảnh đại diện của video Youtube

Nguồn: Hải Long - BlogIT.Vn
↓ Tập tin Đính kèm ↓
↑↑ Lượt xem: 960
score
Đánh giá: 4.5/ 5, 960 bình chọn
- Chia sẻ:G  T
BBCode:

Link:
+ Còn “nhiều” Lắm!
+

Share code Diễn đàn trên Xtgem Full chức năng cực chất GetSmile.Mobie.In bởi Cú Đêm Việt Nam

+

Share code PHP hiển thị thông tin khách đang online trên Site

+

Sử dụng HTML và CSS tạo hiệu ứng hiển thị mô tả khi di chuột vào hình ảnh

+

Ajax là gì? Hướng dẫn code cơ bản khi xử lý dữ liệu với jQuery Ajax

+

Share full code PHP bộ tool cài đặt và quản lý Filelist KhoTruyen365 Xtgem

Trang chủ Cú Đêm Việt Nam Trang Chủ[1-1-960]