Hướng dẫn get link video trang v.nhaccuatui.com

Demo tool get link v.nhaccuatui.com: Demo


Thông tin video trang v.nhaccuatui.com cũng được lưu ở file xml, chúng ta đi tìm link xml đó để đọc thông tin là được, cũng không khó lắm, chỉ là làm cách nào để xác định được file xml đó nằm ở đâu? dạng như thế nào?

Giống như của nhaccuatui.com trang phiên bản video này file xml cũng có dạng: http://v.nhaccuatui.com/flash/xml?key=*

Khi vào xem video, chúng ta view source rồi kiếm từ khóa “play_key“, cái này chính là cái key trên link xml kia.

Ví dụ: http://v.nhaccuatui.com/tv-show/on-gioi-cau-day-roi-2015.7WfhOTHvMfE1.html?key=gf6VPxkkDukDU

View source sẽ thấy play_key=”174062a012f8239163deabe709a90ece

Bỏ key vào link xml: http://v.nhaccuatui.com/flash/xml?key=174062a012f8239163deabe709a90ece

Vào link xml đó chúng ta view source lần nữa sẽ thấy thông tin các video của tivi show Ơn giời cậu đây rồi, tức là ta có thể get hết tất cả tập phim luôn. Đó là tất cả hướng làm, giờ chúng ta cùng thực hiện trên code.

Trước tiên ta phải có function curl:

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;
}

Và function getListMp4:

function getListMp4($link){
    $content = curl($link); // đọc nội dung trang
    $return = array();
    preg_match("/play_key\=\"(.*)\"/",$content,$arr_preg); // tìm key
    if($arr_preg){
        $arrKeyXML = explode('"', $arr_preg[1]); // tách key trong chuỗi vừa tìm được
        $linkXML = 'http://v.nhaccuatui.com/flash/xml?key='.$arrKeyXML[0]; // ghép key vào link xml
        $xml_data = curl($linkXML); // đọc nội dung trang xml
        $xml_string = str_replace("<![CDATA[","",$xml_data); // loại bỏ <![CDATA[ $xml_string = str_replace("]]>","",$xml_string); // loại bỏ ]]>
        $xml_string = preg_replace('/&(?!#?[a-z0-9]+;)/', '&amp;', $xml_string); // thay thế ký tự đặc biệt
        $xml_arr = json_decode(json_encode((array) simplexml_load_string($xml_string)), 1); // chuyển đổi thành mảng
        if($xml_arr['track']['item']){
            $arrItem = $xml_arr['track']['item'];
            foreach ($arrItem as $key => $item) {
                $return[$key]['link480']   = $item['location']; // link video 480p
                $return[$key]['link360']   = $item['lowquality']; // link video 480p
                $return[$key]['link720']   = $item['highquality']; // link video 480p
                $return[$key]['title']     = $item['title']; // title
                $return[$key]['image']     = $item['image']; // link image
                $return[$key]['time']      = $item['time']; // time
                $return[$key]['view']      = $item['view']; // lượt view
            }
        }
    }
    return $return;
}

Mình đã comment chú thích từng dòng code rồi, cách dùng thì bạn chỉ cần điền link vào function nó sẽ trả về cho bạn 1 mảng chứa tất cả các link đó:

$link = "http://v.nhaccuatui.com/tv-show/on-gioi-cau-day-roi-2015.7WfhOTHvMfE1.html?key=gf6VPxkkDukDU";
$test = getListMp4($link);
echo "
<pre>";
print_r($test);

Nguồn:blogit.vn 
Share on Google Plus

About NHOCLAK DJ

This is a short description in the author block about the author. You edit it by entering text in the "Biographical Info" field in the user admin panel.

0 nhận xét:

Đăng nhận xét