API youtube và Google Apps Script: Làm video youtube triệu views

Posted by
alt text

1. Vấn đề

Nhìn cái video có tức cái lồng ngực không mọi người.
Video này có gì đặc biệt? Cũng chẳng có gì lắm ngoài sự nổi tiếng của chủ kênh và một cái title: This Video Has $viewCount Views.
Đấy, thế mà mấy chục triệu views lận.
Còn chờ chi nữa mà không làm một cái tương tự, biết đâu lại có video triệu views đỡ phải đi code 😀

2. Những thứ cần và những việc sẽ làm.

Mình sẽ sử dụng youtube API và Google Apps Script
a. Những thứ cần.

  • 1 video youtube upload lên kênh.
  • 1 tài khoản trên Google Apps Script (https://script.google.com/home/start) . Có thể lấy mail google cá nhân được.
  • Mọi người có thể tham khảo thêm về Google Apps Script ở trong bài viết này https://kipalog.com/posts/Bot-Chatwork-1—Tao-Bot-Chat-tren-Chatwork-thong-qua-Google-Apps-Script

b. Những việc sẽ làm.

  • Upload video lên youtube, tạo tài khoản trên Google Apps Script.
  • Viết code ở Google Apps Script.
  • Tạo Triggers (Để nó có thể update được lượng views).

3. Làm thôi

a. Upload video lên youtube, tạo tài khoản trên Google Apps Script.

Kiếm cái video nào rồi upload lên youtube.
Rồi bạn lấy được cái ID của nó để tí còn code , bạn vào Options > Get shareable link
Đại khái nó sẽ như thế này. https://youtu.be/jRmqIqXp4qU
Thì cái jRmqIqXp4qU chính là ID
alt text
Còn cái tài khoản của Google Apps Script thì dùng mail là được (https://script.google.com/home/start)

b. Viết code tạo message

Chúng ta sẽ làm cái xịn xò hơn cái title của video triệu views kia, ngoài views ra còn cho hiển thị số like, dislike, comments.
Ý tưởng: Nếu làm bằng tay thì sẽ có những bước

  • Nhìn bằng mắt số views, số like, số dislike, số comments -> Dùng youtube API lấy
  • Vào channel youtube của mình để sửa cái title cho nó có số views, … -> Dùng code để update
  • Cứ 10 phút vào check rồi làm 2 bước trên -> Tạo triggers để tự động làm

Code thôi.
Chúng ta vào https://script.google.com/home/start rồi bấm vào New Project

Đây là docs tài liệu https://developers.google.com/youtube/v3/docs/videos

Về cơ bản có thể viết code call API youtube, nhưng Script hỗ trợ import Advanced Google Services
Chúng ta vào: Services > Youtube Data API v3 > Add
alt text

Đây là đoạn code. Mình sẽ giải thích từng dòng qua comment

function updateTitle() {
  //Lấy ID của video youtube, chính là ID ở mục a) trên
  var videoID = 'jRmqIqXp4qU'; //https://youtu.be/jRmqIqXp4qU
  //Chúng ta sẽ lấy 2 tham số này của một video
  //snippet: Trong snippet có title của video
  //statistics: Trong statistics có số lượng của views, likes, disslikes, comments
  //Tất cả tham số của video có trong tài liệu https://developers.google.com/youtube/v3/docs/videos
  var part = 'snippet, statistics';
  var params = {'id': videoID};

  //Lấy video thông qua YouTube.Videos.list
  var response = YouTube.Videos.list(part, params);
  var video = response.items[0];

  //Lấy số lượng views, likes, disslikes, comments hiện tại của video ở trong statistics
  var videoViewsCount = video.statistics.viewCount;
  var videoLikeCount = video.statistics.likeCount;
  var videoDislikeCount = video.statistics.dislikeCount;
  var videoCommentCount = video.statistics.commentCount;

  //Tạo title mới với số lượng views, likes, dislikes, comments
  var videoTitle = 'This video has ' + videoViewsCount + ' views and ' + videoLikeCount + ' likes and ' + videoDislikeCount + ' dislikes and ' + videoCommentCount + ' comments!!!';

  //Gắn title của video với title mới tạo kia
  video.snippet.title = videoTitle;

  //Update lại video (để title được update mới)
  try {
    YouTube.Videos.update(video, part);
  } catch(e) {
  }
}

OK, Done. Bấm Run xem nó thế nào
alt text

Lúc này nó hỏi có cho nó quyền không, cấp quyền (Allow) cho nó là được

alt text

Giờ làm cái Trigger cứ 10 phút nó update 1 lần là Hoàn thành.

alt text

4. Tổng kết.

Giờ chỉ chờ thời video triệu views là giàu thôi :((
Cảm ơn mọi người đã xem!

Bài Bái

(。◕‿◕。) NyLaa (。◕‿◕。)

Leave a Reply

Your email address will not be published. Required fields are marked *