メニュー
人気記事
#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();
1236日前
1855日前
2582日前
2779日前
3025日前
3645日前
3705日前
3843日前
3926日前
4100日前
atwikiでよく見られているWikiのランキングです。新しい情報を発見してみよう!
最近アクセスの多かったページランキングです。話題のページを見に行こう!