himado GoodByeTop Script

ひまわり動画において、見たい登録動画を厳選しアクセスしやすくするものです。

目前為 2016-06-22 提交的版本,檢視 最新版本

// ==UserScript==
// @name        himado GoodByeTop Script
// @namespace   Scottie400
// @include     http://himado.in/?sort=movie_id&page=*
// @exclude     http://himado.in/?sort=movie_id&page=*&user_no=*
// @version     1.47
// @grant       none
// @description ひまわり動画において、見たい登録動画を厳選しアクセスしやすくするものです。
/* *****************************************************************************************
◆ひまわり動画において、見たい登録動画を厳選しアクセスしやすくするものです。
 新着順ページが最も早く更新・反映されることを利用し、
 基本的に需要や視聴の蓋然性が低いものなどを瞬時に選別することで、
 「あれ見たかったのにたくさんの登録で埋もれていて忘れてしまった…!」という事態を減らします。
 1ページで約1~2日分を一覧でき、10ページまでさかのぼれる仕様となっています。
 本来のひまわり動画の良さを108%引き出し快適化することが可能です。

 ブックマークは「http://himado.in/?sort=movie_id&page=0」に変更すると便利です。

 設定の仕方については、ソースコード内の説明を参照。
 項目は9つで簡潔ですので、全文をちゃんとチェックし各々好みで工夫して設定してください。


 ◆Greasemonkey(firefox)、Tampermonkey(Chorome,Opera)というアドオンが必要です。
  導入方法はこちらを要参照⇒http://dic.nicovideo.jp/a/greasemonkey
  ユーザースクリプトとは?⇒https://greasyfork.org/

 ◆ひまわり動画側の設定制約
  ⇒http://himado.in/?mode=customview
  サムネイル--------どれでもOK
  動画情報表示------すべて・標準・最小(なし以外可)
  コメント表示------どれでもOK
  クイックサーチ----チェックON/OFF可 (←クイックサーチは公式で廃止された模様)
  検索履歴----------チェック必須
  視聴履歴----------チェック必須

 ※Last Update : 2016-06-22
 ※ご使用は自己責任でお願いします。責任を負いかねます。
 ※設定後にページが変わらないままになる場合は設定の仕方が間違っています。見直しましょう。
 ※推奨環境:Win7が普通に動く程度を満たすスペック・ちゃんと更新しているブラウザ
***************************************************************************************** */
// ==/UserScript==



//◆1◆「タイトル "許可" 設定」です。
// 除外しなくていい登録をタイトル中の単語で指定します。
//◆下記のように「'***',」と羅列していきます。最後だけは「,」を書かないこと。見やすく改行しても大丈夫。
// 記入例 var AdmissionT = ['ひまわり', 'きのこ', 'たけのこ'];
//◆「AdmissionT」はタイトル文字列指定。「AdmissionS」は正規表現用です(わかる人のみイジってください)。
//◆追っているモノ等で好みのタイトル指定をして快適にしてください。デフォはオススメのものです。
// 使わない場合はそのまま未記入の空の1行のみで大丈夫です、必須。
//◆編集が終わったら「保存」を忘れずに!
var AdmissionT = [
  '追加',
  '予告',
  '限定',
  'ねこ'
];
var AdmissionS = /(\d+話|(\s|#)\d{2,3}\s)/;


//◆2◆「タイトル "排除" 設定」です。
// 取りわけ事前に排除したい登録をタイトル中の単語で指定します。記入方法等は許可設定と全く同じ。
//◆許可設定の後に選別しますので、許可してもこちらの単語に引っかかれば排除されます。
var AdmissionN = [

];


//◆3◆「カテゴリ "許可" 設定」です。
// 除外しなくていいカテゴリタグを指定します。
//◆こちらも同じく、書き方は「タイトル許可設定」らと同じです。
//◆使える単語は「アニメ・ゲーム・音楽・スポーツ・ドラマ・特撮・エンタメ・ラジオ」のみ。
var AdmissionC = [
  'アニメ'
];


//◆4◆「カテゴリ "排除" 設定」です。
// カテゴリタグを解析し視聴の蓋然性が低いものを排除します。
//◆概ね「true;」で全く問題ないと思いますが、幅広く担保したい場合は「false;」にしてください。
var AdmissionD = true;


//◆5◆「Youtube "全排除" 設定」です。
// Youtubeの登録自体すべて消してしまいたい人向け。何らかを見逃す可能性もあるためあまりお薦めしません。
//◆全消ししたい場合は「true;」、設定しない場合は「false;」と入力。
var NoYouT = true;


//◆6◆「人気登録の強調」です。
//◆total再生数がいくら以上で強調したいか指定してください。数を1つだけ記述し「' ',」は要りません。
// 必要ない場合はとても大きい数字(99999999等)にすればOK。
//◆デフォの数値は目安です。
var TotalV = (
  5000
);


//◆7◆ 特別ピックアップ「PickUp HIT」の設定です。このUserScriptの最も便利で肝な機能になります。
// 特定の登録を選別し別個に羅列表示することで、見逃しを極力減らします。
//◆日本語を含む単語を推奨(1~3文字ほどの短い英数字のみでは稀に誤爆する場合があります)。
//◆ほとんどの人はデフォの文字列で十分だと思いますが、
// 広く「'話', '#'」といった指定もいいでしょうし、個人的に追っているモノのキーワードを追加しても可です。
var imiTop = [
  '追加',
  '高画質',
  'HD',
  'HD',
  '200',
  '限定'
];


//◆8◆「PickUp HIT」の表示の高さを指定できます(任意)。
// 自前のブラウザの大きさに合わせて「'***px';」と調節値を入れてください。概ね800pxで3行表示です。
var PUHheight = '800px';


//◆9◆「PickUp HIT」の動作の際、新着順からカット掲載するかコピー掲載するか決められます。お好みでどうぞ。
// 「0」であればコピー(新着順一覧にもHIT内部にも掲載されます)
// 「1」であればカット(新着順一覧からは消え、HIT内部にのみ掲載されます)
var CopyorNot = 0;


//◆+◆「TOP9 Peep」を常に表示しておくか決められます。TOP9が気になる人用。
// 「0」であればクリック開閉式(デフォルト)、「1」であれば常に表示。
var NotbatG = 0;


/////////////////////////////////////////////////////////////////////////////////////////////////////
//◆編集不要範囲 ここから
////フェードインアウト ここから
$('#body_top').before('<div class="BlackorWhite"></div>');
$('.BlackorWhite').css('cssText', 'display:none; width:3000px; height:5000px; position:fixed; background-color:#272727; z-index:99;');
$('.BlackorWhite').fadeIn(150, "swing");
////フェードインアウト ここまで

///メイン動作 ここから
var pageNo1 = location.search.match(/\d/g).join("");
    pageNo2 = parseInt(pageNo1);
    pageP1 = (pageNo2+1);
    pageP2 = (pageNo2+2);
    pageP3 = (pageNo2+3);
var pageURL1 = "http://himado.in/?sort=movie_id&page=" + pageP1;
var pageURL2 = "http://himado.in/?sort=movie_id&page=" + pageP2;
var pageURL3 = "http://himado.in/?sort=movie_id&page=" + pageP3;
var pageTag = ".thumbblock_3colum";
$("#fc2count").load(pageURL1+' '+pageTag, function () {
  $('.thumbblock_3colum').insertBefore('#thumb').css({'width':'245px', 'display':'inline-block'});
$("#fc2count").load(pageURL2+' '+pageTag, function () {
  $('.thumbblock_3colum').insertBefore('#thumb').css({'width':'245px', 'display':'inline-block'});
$("#fc2count").load(pageURL3+' '+pageTag, function () {
  $('.thumbblock_3colum').insertBefore('#thumb').css({'width':'245px', 'display':'inline-block'});

$("#fc2count").load("http://himado.in/ .movieBox", function () {
  $('.skycraper').prepend('<div class="Top9Only"></div>');
  $('.movieBox').prependTo('.Top9Only');
  $('.home_info, .home_ucome').remove();
  Top9Only = document.getElementsByClassName('movieBox');
  $(Top9Only[7]).css('cssText', 'display: inline-block !important; transform: scale(0.79787) !important; height: 120px !important; position: relative; left: 132px; top: -480px;'); $(Top9Only[6]).css('cssText', 'display:inline-block!important; transform: scale(0.79787)!important; height:120px!important; position: relative; left: -18px; top: -360px;'); $(Top9Only[5]).css('cssText', 'display: inline-block !important; transform: scale(0.79787) !important; height: 120px !important; position: relative; left: 132px; top: -360px;'); $(Top9Only[4]).css('cssText', 'display:inline-block!important; transform: scale(0.79787)!important; height:120px!important; position: relative; left: -18px; top: -240px;'); $(Top9Only[3]).css('cssText', 'display: inline-block !important; transform: scale(0.79787) !important; height: 120px !important; position: relative; left: 132px; top: -240px;'); $(Top9Only[2]).css('cssText', 'display:inline-block!important; transform: scale(0.79787)!important; height:120px!important; position: relative; left: -18px; top: -120px;'); $(Top9Only[1]).css('cssText', 'display: inline-block !important; transform: scale(0.79787) !important; height: 120px !important; position: relative; left: 132px; top: -120px;'); $(Top9Only[0]).css('cssText', 'display:inline-block!important; transform: scale(0.79787)!important; height:120px!important; position: relative; left: -18px;'); 
$("#fc2count").load("http://himado.in/ .movieMainContents", function () {
  $('.movieMainContents').prependTo('.Top9Only').css('cssText', 'display:inline-block!important; transform: scale(0.9475)!important; height:136px!important; position: relative; left: -9px;');
  $('.movieBox').slice(8, 20).remove();
  $('.Top9Only').css('cssText', 'height:650px!important; margin-top:20px!important;');
  $('.Top9Only a img').slice(0, 7).css('height', '113px');

////全体スタイル編集 ここから
var headmenus = document.getElementsByClassName('headmenus');
var sortnavis = document.getElementsByClassName('sortnavi');
var pagenavis = document.getElementsByClassName('pagenavi');
var Tds = document.getElementsByTagName('td');
var seahis1 = document.getElementsByClassName('head3');
var seahis2 = document.getElementsByTagName('ol');
$('html').css('width', '75%');
$('#body_top').css('cssText', 'background-image:url(http://i59.tinypic.com/2drxtee.jpg)!important; background-attachment:fixed!important; background-position:right bottom!important; background-repeat:no-repeat!important;');
$('.contents').css({'width':'760px', 'margin-top':'130px', 'margin-left':'auto', 'margin-right':'auto'});
  $('#header').css({'width':'759px', 'position':'fixed', 'top':'0px', 'background-color':'#272727', 'opacity':'0.94', 'color':'#C0C0C0', 'z-index':'2'}).appendTo('body_top');
    $('#sv_logo a').removeAttr("href").css('cssText', 'background:none!important; padding:0px 0px 0px 0px!important; display:inline-block!important;');
    $('.headmenu').insertBefore(seahis1[0]).css('padding', '20px 5px 2px 11px');
    $('.headmenus').remove(); //.not(headmenus[7])
    $('#searchform').empty();
$('#header table').css('width', '759px');
$('#leftbox').css('width', '760px');
  $('.pagenavi').css({'width':'753px', 'margin-top':'15px', 'font-size':'120%', 'font-weight':'bold'});
  $('.sortnavi').css({'width':'755px'});
  $('.thumbcomment').css('width', '98%');
  $('.home_head').css('width', '738px');
    $(pagenavis[0]).prependTo('.sortnavi').css({'margin-top':'10px', 'margin-left':'-2px'});
    $(pagenavis[1]).remove();
    $(sortnavis[0]).appendTo('#header');
$(Tds[0]).css('width', '240px');
$('.head3').css('margin-top', '20px');
$('#group_link, .pagenavi_res, #thumb, .sortnavi_other, #sh_fc2footer_fix, .xnormal').remove();
////全体スタイル編集 ここまで

////東ゴ◯トー共和国選別計画 ここから
var Nodes = document.getElementsByClassName('thumbblock_3colum');
var TitleALL = document.getElementsByClassName('thumbtitle');
var CategALL = document.getElementsByClassName('thumbleft');
var TagALL = document.getElementsByClassName('thumbtag xmini xnone');
  var numT = TitleALL.length;
  var numC = CategALL.length;
  var num1 = Math.max(numT, numC);
if(AdmissionD === true){
  var AdmissionDen = /(\d|\w|\u|-)+\&nbsp\;|(\d|\w|\u)+[^\x01-\x7E]+\&nbsp\;/;
  var AdmissionDjp = /[^\x01-\x7E]{5,}\&nbsp\;|(\d|\w|\u|\x20|-)+[^\x01-\x7E]{1,4}\&nbsp\;/;
}else if(AdmissionD === false){
  var AdmissionDen = /s{49}/;
  var AdmissionDjp = /s{49}/;
}
function strlen(str) {
  return str.length - (str.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g)||[]).length;}
Back1: for (var h = 119; h >= 0; h--) {
  var isExist1 = Nodes[h].innerHTML;
  var isExist21 = isExist1.indexOf("youtube.com")!== -1;
  var isExist22 = isExist1.indexOf("fc2.com")!== -1;
  var bodyInnerTextC = TagALL[h].innerHTML;
  var isExist23 = AdmissionDen.test(bodyInnerTextC);
  var isExist24 = AdmissionDjp.test(bodyInnerTextC);
    if(NoYouT === true && isExist21 === true){
       (Nodes[h]).remove();
    }else if(isExist23 === true || isExist24 === true){
       (Nodes[h]).remove();
    }else if(isExist21 === true || isExist22 === true) {
      var bodyInnerText1 = TitleALL[h].innerHTML;
      var bodyInnerText2 = CategALL[h].innerHTML;
        for (var i = 0; i < num1; i++) {
          var isExist31 = AdmissionS.test(bodyInnerText1);
          var isExist32 = strlen(bodyInnerText1); //alert(isExist32);
          var isExist33 = bodyInnerText1.indexOf(AdmissionT[i])!== -1;
          var isExist4 = bodyInnerText2.indexOf(AdmissionC[i])!== -1;
            if(isExist31 === false && isExist33 === false && isExist4 === false) {
               continue;
            }else{
              if(isExist32 >= 141 && isExist21 === true){continue;
              }else{continue Back1;}
            }
        } (Nodes[h]).remove();
    }
}


var Nodes2 = document.getElementsByClassName('thumbblock_3colum');
var TitleALL2 = document.getElementsByClassName('thumbtitle');
  var numT2 = TitleALL2.length;
  var numN = AdmissionN.length;
Back2: for (var f = numT2-1; f >= 0; f--) {
  var bodyInnerText3 = TitleALL2[f].innerHTML;
  for (var g = 0; g < numN; g++) {
    var isExist5 = bodyInnerText3.indexOf(AdmissionN[g])!== -1;
      if(isExist5 === true) {
         $(Nodes2[f]).remove();
         continue Back2;
      }
  }
}
var Nodes3 = document.getElementsByClassName('thumbblock_3colum');
var ViewsALL = document.getElementsByClassName('thumbdata');
  var numV = ViewsALL.length;
for (var j = numV; j >= 1; j--) {
  var bodyInnerText4 = ViewsALL[j-1].innerHTML;
  var SearchString = "\d+";
  var RegularExp = new RegExp(SearchString, "g");
  var isExist6 = bodyInnerText4.match(/[0-9]+\.?[0-9]*/g);
  var num2 = isExist6.length;
    if(isExist6[num2 - 4] >= TotalV) {
       $(Nodes3[j-1]).css('background-color', 'rgba(255,76,76,0.2)');
    }
}
$('#searchform').after('<div id="PickUpHIT"></div>');
$('#PickUpHIT').css('cssText', 'width:1032px; margin-top:2px; margin-left:-2px; font-color:#fff; background-color:#111; z-index:9; overflow:auto!important;');
$('#PickUpHIT').css('height', PUHheight);
var TitleALL3 = document.getElementsByClassName('thumbtitle');
  var numT3 = TitleALL3.length;
  var numi = imiTop.length;
Back3: for (var k = numT3-1; k >= 0; k--) {
  var bodyInnerText5 = TitleALL3[k].innerHTML;
  for (var l = 0; l < numi; l++) {
    var isExist7 = bodyInnerText5.indexOf(imiTop[l])!== -1;
      if(isExist7 === true) {
        if(CopyorNot === 0) {
           $(Nodes3[k]).clone().prependTo('#fc2count').css({'height':'255px', 'overflow':'hidden', 'background-color':'rgba(255,76,76,0.3)'});
           continue Back3;
      }else{
        if(CopyorNot == 1) {
           $(Nodes3[k]).prependTo('#fc2count').css({'height':'255px', 'overflow':'hidden', 'background-color':'rgba(255,76,76,0.3)'});
           continue Back3;
        }
      }
      }
  }
}
$('#fc2count .thumbblock_3colum').prependTo('#PickUpHIT');
$('#fc2count').remove();
////東ゴ◯トー共和国選別計画 ここまで

////ソート・履歴スタイル編集 ここから
var isExist8 = seahis1[0].innerHTML;
var isExist9 = isExist8.indexOf("クイックサーチ")!== -1;
if(isExist9 === true) {
  $('.skycraper').css({'width':'305px', 'height':'2000px', 'position':'absolute', 'top':'46px', 'left':'auto', 'margin-left':'775px'});
  $(seahis1[1]).css({'width':'125px', 'margin-left':'4px', 'vertical-align':'top', 'float':'left'}).insertAfter(seahis1[0]);
  $(seahis1[2]).css({'width':'160px', 'vertical-align':'top', 'float':'left'}).insertAfter(seahis1[1]);
  $(seahis2[0]).css({'width':'130px', 'height':'auto', 'vertical-align':'top', 'display':'inline-block'});
  $(seahis2[1]).css({'width':'170px', 'height':'auto', 'vertical-align':'top', 'display':'inline-block', 'overflow':'auto'});
  $(seahis1[0]).remove();
  $('#table_quicksearch').css({'margin-top':'25px', 'position':'relative', 'width':'300px', 'height':'800px', 'table-layout':'fixed', 'vertical-align':'top', 'display':'inline-block', 'overflow':'auto'}).insertBefore(seahis1[0]);
} else {
  $('.skycraper').css({'width':'305px', 'position':'absolute', 'top':'46px', 'left':'auto', 'margin-left':'775px'});
  $(seahis1[0]).css({'width':'125px', 'margin-left':'4px', 'vertical-align':'top', 'float':'left'});
  $(seahis1[1]).css({'width':'160px', 'vertical-align':'top', 'float':'left'}).insertAfter(seahis1[0]);
  $(seahis2[0]).css({'width':'130px', 'height':'auto', 'vertical-align':'top', 'display':'inline-block'});
  $(seahis2[1]).css({'width':'170px', 'height':'auto', 'vertical-align':'top', 'display':'inline-block', 'overflow':'hidden'});
}
$('#thumb, .sortnavi_short').remove();
$(".pagenavi").empty();
$(document).ready(function(){
  $(".pagenavi").append('<ul class="pagenavi_pager"><a href="#" class="btn1"><span class="pager">❂ Pi©kUp HIT ❂</span></a>………<a href="./?sort=movie_id&page=0" class="pagelink"><span class="pager">1</span></a><a href="./?sort=movie_id&amp;page=4" class="pagelink"><span class="pager">2</span></a><a href="./?sort=movie_id&amp;page=8" class="pagelink"><span class="pager">3</span></a><a href="./?sort=movie_id&amp;page=12" class="pagelink"><span class="pager">4</span></a><a href="./?sort=movie_id&amp;page=16" class="pagelink"><span class="pager">5</span></a><a href="./?sort=movie_id&amp;page=20" class="pagelink"><span class="pager">6</span></a><a href="./?sort=movie_id&amp;page=24" class="pagelink"><span class="pager">7</span></a><a href="./?sort=movie_id&amp;page=28" class="pagelink"><span class="pager">8</span><a href="./?sort=movie_id&amp;page=32" class="pagelink"><span class="pager">9</span></a><a href="./?sort=movie_id&amp;page=36" class="pagelink"><span class="pager">10</span></a>………<a href="#" class="btn2"><span class="pager"> TOP9 Peep⇒</span></a></ul>');
});
$(document).ready(function(){
  $("#PickUpHIT").hide();
  var flg = "close";
  $(".btn1").click(function(){
    $("#PickUpHIT").toggle(150);
        if(flg == "close"){
           $(this).html('<span class="pager">    Hide    </span>');
            flg = "open";
        }else{
           $(this).html('<span class="pager">❂Pi©kUp HIT❂</span>');
            flg = "close";
        }
  });
});
if(NotbatG === 0){
  $(document).ready(function(){
    $(".Top9Only").hide();
    var flg = "close";
    $(".btn2").click(function(){
      $(".Top9Only").slideToggle();
          if(flg == "close"){
             $(this).html('<span class="pager">    Hide    </span>');
              flg = "open";
          }else{
             $(this).html('<span class="pager"> TOP9 Peep⇒</span>');
              flg = "close";
          }
    });
  });
}else{ if(NotbatG == 1){
}
}
////ソート・履歴スタイル編集 ここまで

////現在のページ強調(窮策) ここから
var pagelinks = document.getElementsByClassName('pagelink');
for (var n = 0; n < 20; n++) {
  var pageNo4 = pagelinks[n].outerHTML;
  var pageNo5 = pageNo4.substring(35, 38);
      pageNo5 = parseInt(pageNo5);
    if(pageNo1 == pageNo5) {
        $(pagelinks[n]).css('background-color','#FF4C4C');
    }
}
////現在のページ強調(窮策) ここまで

$('.BlackorWhite').fadeOut(1200, "swing");
});
});
});
});
});
///メイン動作 ここまで
//◆編集不要範囲 ここまで
////////////////////////////////////////////////////////////////////////////////////////////////////