「スクリプト」の編集履歴(バックアップ)一覧に戻る
スクリプト」を以下のとおり復元します。
#contents();
*WSHを用いたスクリプトによる機能拡張

*サンプル
各項目のソースファイルをメモ帳などに貼り付け、拡張子(.js)で保存してください。

**マイページに登録されているうち、ダウンロード済みアイテムのプレイリストを作成し開く
pathOfNicoPlayerとpathOfDownloadをそれぞれの環境にあったパスに変更してください。
使う時はクリップボードにマイページのアドレス(http://~/0000000/000000:省略不可)を
コピーしてダブルクリックしてください。
またNicoPlayerのプレイリストウィンドウが表示されていれば、自動的に開きます。
 // 環境設定
 var pathOfNicoPlayer = "NicoPlayerのインストールパス(パスセパレータ \\)";
 var pathOfDownload = "動画ファイルのダウンロードパス(同上)";
 
 // クリップボードからマイページのアドレスを取得
 var ieObject = new ActiveXObject( "InternetExplorer.Application" );
 ieObject.Navigate( "about:blank" );
 while ( ieObject.Busy ) {
  WScript.Sleep( 100 );
 }
 var addressOfMypage = ieObject.Document.parentWindow.clipboardData.getData( "text" );
 ieObject.Quit();
 
 // Msxml2(IE6標準)によりマイページのGETリクエスト送出
 var httpObject = WScript.CreateObject( "Msxml2.XMLHTTP" );
 httpObject.onreadystatechange = function()
 {
  if( httpObject.readyState == 4 )
  {
   getRequestPage( httpObject );
  }
 }
 // open( , , false )は同期指定(さもないと取得前にプログラムが終了する)
 httpObject.open( "GET", addressOfMypage, false );
 httpObject.send( "" );
 
 function getRequestPage( httpObject )
 {
  // マイページのテキストを検索しID(sm[0-9]+)をリストアップ
  var requestPageText = httpObject.responseText;
  var mypageIdList = requestPageText.match( /sm[0-9]+/g );
  if( mypageIdList == null ) {
   return; // IDが見つからず
  }
  
  // ダウンロードフォルダを検索し.flvファイルをIDに基づいてリストアップ
  var filesHash = {};
  var fsoObject = WScript.CreateObject( "Scripting.FileSystemObject" );
  var filesCollection = fsoObject.GetFolder( pathOfDownload ).Files;
  for( var file = new Enumerator( filesCollection ); !file.atEnd(); file.moveNext() ) {
   var fileName = file.item().Name;
   if( fsoObject.GetExtensionName( fileName ) == "flv" ) {
    filesHash[fileName.match( /sm[0-9]+/ )] = file.item().Path;
   }
  }
  
  // マイページのIDとローカルファイルを紐付けプレイリスト形式にする
  var newPlaylistText = "", newDownloadListText = "";
  for( var i = 0; i < mypageIdList.length; i += 2 ) {
   if( filesHash[mypageIdList[i] ] != undefined ) {
    newPlaylistText += filesHash[mypageIdList[i] ] + "\n";
   }
  }
  
  // プレイリストファイル(.m3u)に落とす
  addressOfMypage.match( /.*\/([0-9]+)\/([0-9]+)/ );
  var newPlylistFileName = RegExp.$1 + "_" + RegExp.$2 + ".m3u";
  // OpenTextFile( , 2, true )の2は書出指定(読込1・追記8)、trueは新規作成あり
  var pathOfNewPlaylistFile = pathOfNicoPlayer + "\\" + newPlylistFileName;
  var newPlaylistFile = fsoObject.OpenTextFile( pathOfNewPlaylistFile, 2, true );
  newPlaylistFile.Write( newPlaylistText );
  newPlaylistFile.Close();
  
  // NicoPlayerが.m3uファイルのD&Dに対応すると、以下の全ては次の1行になります
  // shellObject.Run( "\"" + pathOfNicoPlayer + "\\NicoPlayer.exe\" \"" + pathOfNewPlaylistFile + "\"" );
  
  // プレイリストファイルパスをクリップボードへコピー
  var ieObject = new ActiveXObject( "InternetExplorer.Application" );
  ieObject.Navigate( "about:blank" );
  while ( ieObject.Busy ) {
   WScript.Sleep( 100 );
  }
  ieObject.Document.parentWindow.clipboardData.setData( "text", pathOfNewPlaylistFile );
  ieObject.Quit();
  
  // NicoPlayerのプレイリストウィンドウに登録する
  var shellObject = WScript.CreateObject( "WScript.Shell" );
  shellObject.AppActivate( "NicoPlayer - プレイリスト" );
  WScript.Sleep( 100 );
  shellObject.SendKeys( "^O" );
  WScript.Sleep( 100 );
  shellObject.SendKeys( "^V" );
  WScript.Sleep( 100 );
  shellObject.SendKeys( "%O" );
 }
*コメント
#pcomment();

復元してよろしいですか?

目安箱バナー