Advertisement
Guest User

Untitled

a guest
Oct 17th, 2019
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.78 KB | None | 0 0
  1. function getYoutube($id){
  2.        
  3.         echo('[YouTube] Парсинг ссылки по ID:' . $id . "\n");
  4.        
  5.         $headers[] = 'Host: www.youtube.com';
  6.         $headers[] = 'X-Youtube-Sts: 18159';
  7.         $headers[] = 'Sec-Fetch-Mode: cors';
  8.         $headers[] = 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.132 Safari/537.36';
  9.         $headers[] = 'X-Spf-Referer: https://www.youtube.com/';
  10.         $headers[] = 'X-Youtube-Utc-Offset: 180';
  11.         $headers[] = 'X-Youtube-Client-Name: 1';
  12.         $headers[] = 'X-Spf-Previous: https://www.youtube.com/';
  13.         $headers[] = 'X-Youtube-Client-Version: 2.20190920.05.01';
  14.         $headers[] = 'Accept: */*';
  15.         $headers[] = 'Sec-Fetch-Site: same-origin';
  16.         $headers[] = 'Referer: https://www.youtube.com/';
  17.         $headers[] = 'Accept-Language: ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7';
  18.        
  19.         $result = $this->getCurl('https://www.youtube.com/watch?v='.$id.'&pbj=1', $headers);
  20.        
  21.         /*Для отладки*/
  22.         //file_put_contents('test.json', $result);
  23.        
  24.         $json = json_decode($result, true);
  25.         $title = $json['3']['playerResponse']['videoDetails']['title'];
  26.        
  27.         //Хитровыебанные выебоны ради 720p, ибо эта залупа не дает получить 1080p
  28.        
  29.         $urls = $json['2']['player']['args']['url_encoded_fmt_stream_map'];
  30.        
  31.         $url = rawurldecode(Regex::of('url=(.*?)(,|itag=)')->with($urls)->all()[0][1]);
  32.        
  33.         echo('[YouTube] Спарсил видео с названием "' . $title . '"' . "\n");
  34.         echo('[YouTube] Ссылка:' . $url . "\n");
  35.        
  36.         $this->player->open($url);
  37.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement