どうも、靖宗です。
動画内でお話してましたが、その4の放送の際に行った場所までのソースコードをブロマガにアップしておきます。
「動画みる時間無いけどちょっと試してみたい!」って方なんかも是非ご利用ください。
いきなり実行された方は色々警告(スプレッドシートへのアクセスと外部へのアクセス)が表示されると思いますので、ご自身の判断で承諾をお願い致します。


function getLivePage() {
  var url = "http://ch.nicovideo.jp/mentalist/live";
  var response = UrlFetchApp.fetch(url);
  return response.getContentText();
}

function subPastParser(htmlText) {
  // 一致する文字列が返る
  return htmlText.match(/<section class=\"sub past\">([\s\S]*?)<\/section>/m)[1];
}

function liveItemParser(htmlText) {
  // 一致する文字列の"配列"が返る
  return htmlText.match(/<div class=\"item_right\">[\s\S]*?<\/div>/gm);
}

function getLiveInfo(htmlText) {
  var returnObject = {
    /*
    lv_name: {title: "オックスフォードからお届け", date: "2018/08/08", dayOfWeek: "水", time: "20:00:00"},
    */
  };
  var liveInfoArray = liveItemParser(htmlText);
 
  for(var i = 0; i < liveInfoArray.length; i++){
    var liveName = liveInfoArray[i].match(/<a href=\"http:\/\/live.nicovideo.jp\/gate\/([\s\S]*?)\">/)[1];
    returnObject[liveName] = {title: "オックスフォードからお届け", date: "2018/08/08", dayOfWeek: "水", time: "20:00:00"};
  }
 
  Logger.log(returnObject);
 
  return returnObject;
}

function myFunction() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var headerArray = ["live name", "title", "date", "day of week", "time"];
 
  sheet.appendRow(headerArray);
 
  var text = getLivePage();
  var subPastText = subPastParser(text);
  getLiveInfo(subPastText);
}