Skip to content

Instantly share code, notes, and snippets.

@a-sync
Last active December 26, 2024 07:28
Show Gist options
  • Save a-sync/bb62dd1b42bf653b0eadf607606443d5 to your computer and use it in GitHub Desktop.
Save a-sync/bb62dd1b42bf653b0eadf607606443d5 to your computer and use it in GitHub Desktop.

Revisions

  1. a-sync revised this gist Nov 3, 2021. 1 changed file with 11 additions and 5 deletions.
    16 changes: 11 additions & 5 deletions nava.downloader.bat
    Original file line number Diff line number Diff line change
    @@ -1,11 +1,10 @@
    @if (@a==@b) @end /*
    @echo off
    setlocal enabledelayedexpansion
    @echo off & setlocal enabledelayedexpansion
    title nava.downloader.bat @ https://gist.github.com/a-sync

    if "%~1"=="/?" goto usage
    if %0 == "%~0" (
    title nava.downloader.bat
    set /p INPUT="URL: "
    set /p INPUT="nava.hu URL: "
    ) else (
    set "INPUT=%~1"
    )
    @@ -136,9 +135,16 @@ if (!TITLE){
    x.setRequestHeader('User-Agent',UA);
    x.send('');
    while (x.readyState!=4) {WSH.Sleep(50)};

    var info = JSON.parse(x.responseText);
    TITLE = info.title;

    if (info.original && info.original.subtitle && info.original.subtitle.length) {
    var s = info.original.subtitle[0].split('(')[1].split(')')[0].replace(/\\/g,'');
    if (s) {
    SUB = 'https:'+String('\x2f\x2f\x6d\x65\x74\x61\x64\x61\x74\x61\x2e\x6e\x61\x76\x61\x2e\x68\x75\x2f\x73\x75\x62\x74\x69\x74\x6c\x65\x2f')+s;
    }
    }
    }
    TITLE = TITLE.replace(/\\|\/|\:|\*|\?|\"|\<|\>|\|/gi, '_');
    if (!TITLE) TITLE = ID;
  2. a-sync revised this gist Nov 2, 2021. 1 changed file with 3 additions and 3 deletions.
    6 changes: 3 additions & 3 deletions nava.downloader.bat
    Original file line number Diff line number Diff line change
    @@ -17,9 +17,9 @@ if /i "%INPUT:~0,5%"=="https" (
    goto invalid

    :valid
    where /q youtube-dl
    where /q yt-dlp
    if ERRORLEVEL 1 (
    powershell -Command "(New-Object Net.WebClient).DownloadFile('https://yt-dl.org/latest/youtube-dl.exe', '%~dp0\youtube-dl.exe')"
    powershell -Command "(New-Object Net.WebClient).DownloadFile('https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp.exe', '%~dp0\yt-dlp.exe')"
    )
    where /q ffmpeg
    if ERRORLEVEL 1 goto dlffmpeg
    @@ -85,7 +85,7 @@ for /f "tokens=1-4 delims=|" %%I in ('cscript /nologo /e:jscript "%~f0" "%INPUT%
    )

    :try
    youtube-dl "!URL!" -o "!TITLE!.mp4"
    yt-dlp "!URL!" -o "!TITLE!.mp4"
    if not exist "!TITLE!.mp4" (
    echo Varakozas a videora...
    timeout 30
  3. a-sync revised this gist Nov 2, 2021. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion nava.downloader.bat
    Original file line number Diff line number Diff line change
    @@ -149,4 +149,4 @@ x.send('');
    while (x.readyState!=4) {WSH.Sleep(50)};

    var res = JSON.parse(x.responseText);
    WSH.Echo(String('\x68\x74\x74\x70\x73\x3A\x2F\x2F\x73\x74\x72\x6C\x62\x2E\x6E\x61\x76\x61\x2E\x68\x75\x2F\x6C\x62\x73\x2F\x6E\x61\x76\x61\x68\x75\x73\x2F\x5F\x64\x65\x66\x69\x6E\x73\x74\x5F\x2F\x61\x6D\x6C\x73\x74\x3A')+res.vid+String('\x3F\x74\x79\x70\x65\x3D\x6D\x33\x75\x38\x26\x73\x65\x73\x73\x69\x64\x3D')+res.token+'|'+ID+'|'+TITLE+'|'+SUB);
    WSH.Echo(String('\x68\x74\x74\x70\x73\x3a\x2f\x2f\x73\x74\x72\x6c\x62\x2e\x6e\x61\x76\x61\x2e\x68\x75\x2f\x6c\x62\x73\x2f\x6e\x61\x76\x61\x68\x75\x5f\x62\x64\x72\x6d\x2f\x5f\x64\x65\x66\x69\x6e\x73\x74\x5f\x2f\x61\x6d\x6c\x73\x74\x3a')+res.vid+String('\x3F\x74\x79\x70\x65\x3D\x6D\x33\x75\x38\x26\x73\x65\x73\x73\x69\x64\x3D')+res.token+'|'+ID+'|'+TITLE+'|'+SUB);
  4. a-sync revised this gist Apr 7, 2021. 1 changed file with 15 additions and 0 deletions.
    15 changes: 15 additions & 0 deletions nava.downloader.bat
    Original file line number Diff line number Diff line change
    @@ -21,7 +21,22 @@ where /q youtube-dl
    if ERRORLEVEL 1 (
    powershell -Command "(New-Object Net.WebClient).DownloadFile('https://yt-dl.org/latest/youtube-dl.exe', '%~dp0\youtube-dl.exe')"
    )
    where /q ffmpeg
    if ERRORLEVEL 1 goto dlffmpeg
    where /q ffprobe
    if ERRORLEVEL 1 goto dlffmpeg
    goto main

    :dlffmpeg
    where /q 7za
    if ERRORLEVEL 1 (
    powershell -Command "(New-Object Net.WebClient).DownloadFile('https://a-sync.github.io/7z-extra/7za.exe', '%~dp0\7za.exe')"
    )
    powershell -Command "(New-Object Net.WebClient).DownloadFile('https://www.gyan.dev/ffmpeg/builds/ffmpeg-release-essentials.7z', '%~dp0\ffmpeg-release-essentials.7z')"
    7za e -y -r ffmpeg-release-essentials.7z ffmpeg.exe ffprobe.exe
    del ffmpeg-release-essentials.7z 7za.exe 2>nul

    :main
    rem echo "%INPUT%"
    for /f "tokens=1-4 delims=|" %%I in ('cscript /nologo /e:jscript "%~f0" "%INPUT%"') do (
    rem echo "%%I"
  5. a-sync revised this gist Mar 27, 2021. 1 changed file with 6 additions and 0 deletions.
    6 changes: 6 additions & 0 deletions nava.downloader.bat
    Original file line number Diff line number Diff line change
    @@ -54,6 +54,12 @@ for /f "tokens=1-4 delims=|" %%I in ('cscript /nologo /e:jscript "%~f0" "%INPUT%
    :ready
    if "!URL:~-1!"=="=" (
    for /f "usebackq" %%B in (`powershell -Command "(New-Object Net.WebClient).DownloadString('!URL!').Split([Environment]::NewLine,[StringSplitOptions]::RemoveEmptyEntries)[-1].Trim().Replace('_pd60000','_pd0')"`) do (
    set TMPURL=%%B
    if /i not "!TMPURL:~0,5!"=="https" (
    echo Varakozas a fajl listara...
    timeout 3
    goto ready
    )
    set URL=%%B
    )
    )
  6. a-sync revised this gist Apr 2, 2020. 1 changed file with 39 additions and 10 deletions.
    49 changes: 39 additions & 10 deletions nava.downloader.bat
    Original file line number Diff line number Diff line change
    @@ -1,6 +1,6 @@
    @if (@a==@b) @end /*
    @echo off
    setlocal EnableDelayedExpansion
    setlocal enabledelayedexpansion

    if "%~1"=="/?" goto usage
    if %0 == "%~0" (
    @@ -26,21 +26,46 @@ rem echo "%INPUT%"
    for /f "tokens=1-4 delims=|" %%I in ('cscript /nologo /e:jscript "%~f0" "%INPUT%"') do (
    rem echo "%%I"
    rem echo "%%J"
    rem echo "%%~K"
    rem echo "%%K"
    rem echo "%%L"
    set URL=%%I
    set ID=%%J
    set TITLE=%%K
    set SUB=%%L

    :checkstatus
    if not "!STATUS!"=="" (
    echo Statusz: !STATUS!
    timeout 12
    )
    for /f "usebackq" %%A in (`powershell -Command "(Invoke-WebRequest -Uri 'https://nava.hu/wp-content/plugins/hms-nava/interface/getVideoRecall.php' -Method 'POST' -Body 'prefix=2&vid=!ID!' -UseBasicParsing).Content.Substring(1).Trim([char]34)"`) do (
    set STATUS=%%A
    )
    rem echo "!STATUS!"
    if "!STATUS!"=="ON_DISK" goto ready
    if "!STATUS!"=="ON_CLOUD" goto ready
    if "!STATUS!"=="ON_TAPE" goto checkstatus
    if "!STATUS!"=="IN_QUEUE" goto checkstatus
    if "!STATUS!"=="IS_RECALLING" goto checkstatus
    if "!STATUS!"=="OVERLOAD" goto error
    if "!STATUS!"=="DB_ERROR" goto error
    if "!STATUS!"=="ARGS_ERROR" goto error

    :ready
    if "!URL:~-1!"=="=" (
    for /f "usebackq" %%B in (`powershell -Command "(New-Object Net.WebClient).DownloadString('%%I').Split([Environment]::NewLine,[StringSplitOptions]::RemoveEmptyEntries)[-1].Trim().Replace('_pd60000','_pd0')"`) do (
    for /f "usebackq" %%B in (`powershell -Command "(New-Object Net.WebClient).DownloadString('!URL!').Split([Environment]::NewLine,[StringSplitOptions]::RemoveEmptyEntries)[-1].Trim().Replace('_pd60000','_pd0')"`) do (
    set URL=%%B
    )
    )
    rem echo "!URL!"
    set NAME=%%K
    if not "%%L"=="" powershell -Command "(New-Object Net.WebClient).DownloadFile('%%L', '%cd%\!NAME!.srt')"

    if not "!SUB!"=="" if not exist "!TITLE!.srt" (
    powershell -Command "(New-Object Net.WebClient).DownloadFile('!SUB!', '%cd%\!ID!.srt')"
    ren "!ID!.srt" "!TITLE!.srt"
    )

    :try
    rem echo "!NAME!"
    youtube-dl "!URL!" -o "!NAME!.mp4"
    if not exist "!NAME!.mp4" (
    youtube-dl "!URL!" -o "!TITLE!.mp4"
    if not exist "!TITLE!.mp4" (
    echo Varakozas a videora...
    timeout 30
    goto try
    @@ -56,6 +81,10 @@ echo Hasznalat: %~nx0 URL
    echo pl.: %~nx0 https://nava.hu/id/*
    if %0 == "%~0" pause
    goto :EOF
    :error
    echo Szerver hiba tortent: !STATUS!
    if %0 == "%~0" pause
    goto :EOF

    JScript */
    var INPUT = WSH.Arguments(0);
    @@ -90,7 +119,7 @@ if (!TITLE){
    var info = JSON.parse(x.responseText);
    TITLE = info.title;
    }
    TITLE = decodeURI(encodeURI(TITLE).replace(/%C3%AD/g,'%69').replace(/%C3%A9/g,'%65').replace(/%C3%A1/g,'%61').replace(/%C3%B3|%C3%B6|%C5%91/g,'%6F').replace(/%C3%BA|%C3%BC|%C5%B1/g,'%75').replace(/%C3%8D/g,'%49').replace(/%C3%89/g,'%45').replace(/%C3%81/g,'%41').replace(/%C3%93|%C3%96|%C5%90/g,'%4F').replace(/%C3%9A|%C3%9C|%C5%B0/g,'%55')).replace(/[^a-z0-9.\-]/gi, '_');
    TITLE = TITLE.replace(/\\|\/|\:|\*|\?|\"|\<|\>|\|/gi, '_');
    if (!TITLE) TITLE = ID;

    x.open('GET',String('\x68\x74\x74\x70\x73\x3A\x2F\x2F\x6E\x61\x76\x61\x2E\x68\x75\x2F\x77\x70\x2D\x63\x6F\x6E\x74\x65\x6E\x74\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x68\x6D\x73\x2D\x6E\x61\x76\x61\x2F\x69\x6E\x74\x65\x72\x66\x61\x63\x65\x2F\x67\x65\x74\x50\x6C\x61\x79\x65\x72\x54\x6F\x6B\x65\x6E\x2E\x70\x68\x70\x3F\x70\x72\x65\x66\x69\x78\x3D\x32\x26\x76\x69\x64\x3D')+ID,true);
  7. a-sync revised this gist Apr 1, 2020. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion nava.downloader.bat
    Original file line number Diff line number Diff line change
    @@ -74,7 +74,7 @@ if (x.responseText.indexOf('"tracks":[{"file":"') !== -1) {
    SUB = 'https:'+x.responseText.split('"tracks":[{"file":"')[1].split('"')[0].replace(/\\/g,'');
    }
    if (x.responseText.indexOf('<meta property="og:title" content="') !== -1) {
    TITLE = x.responseText.split('<meta property="og:title" content="')[1].split('"')[0].replace(/\\/g,'');
    TITLE = x.responseText.split('<meta property="og:title" content="')[1].split('"')[0];
    }

    var htmlfile = WSH.CreateObject('htmlfile'), JSON;
  8. a-sync revised this gist Apr 1, 2020. 1 changed file with 5 additions and 5 deletions.
    10 changes: 5 additions & 5 deletions nava.downloader.bat
    Original file line number Diff line number Diff line change
    @@ -35,12 +35,12 @@ for /f "tokens=1-4 delims=|" %%I in ('cscript /nologo /e:jscript "%~f0" "%INPUT%
    )
    )
    rem echo "!URL!"
    set ID=%%K
    if not "%%L"=="" powershell -Command "(New-Object Net.WebClient).DownloadFile('%%L', '%cd%\!ID!.srt')"
    set NAME=%%K
    if not "%%L"=="" powershell -Command "(New-Object Net.WebClient).DownloadFile('%%L', '%cd%\!NAME!.srt')"
    :try
    youtube-dl "!URL!" -o "!ID!.mp4"
    if not exist "!ID!.mp4" (
    cls
    rem echo "!NAME!"
    youtube-dl "!URL!" -o "!NAME!.mp4"
    if not exist "!NAME!.mp4" (
    echo Varakozas a videora...
    timeout 30
    goto try
  9. a-sync revised this gist Apr 1, 2020. 1 changed file with 43 additions and 18 deletions.
    61 changes: 43 additions & 18 deletions nava.downloader.bat
    Original file line number Diff line number Diff line change
    @@ -1,6 +1,7 @@
    @if (@a==@b) @end /*
    @echo off
    setlocal EnableDelayedExpansion

    if "%~1"=="/?" goto usage
    if %0 == "%~0" (
    title nava.downloader.bat
    @@ -14,37 +15,39 @@ if /i "%INPUT:~0,5%"=="https" (
    if /i "%INPUT:~6,16%"=="//nava.hu/embed/" goto valid
    )
    goto invalid

    :valid
    where /q youtube-dl
    if ERRORLEVEL 1 (
    powershell -Command "(New-Object Net.WebClient).DownloadFile('https://yt-dl.org/latest/youtube-dl.exe', '%~dp0\youtube-dl.exe')"
    )

    rem echo "%INPUT%"
    for /f "tokens=1,2 delims=|" %%I in ('cscript /nologo /e:jscript "%~f0" "%INPUT%"') do (
    for /f "tokens=1-4 delims=|" %%I in ('cscript /nologo /e:jscript "%~f0" "%INPUT%"') do (
    rem echo "%%I"
    rem echo "%%J"
    rem echo "%%~K"
    rem echo "%%L"
    set URL=%%I
    if "!URL:~-1!"=="=" (
    for /f "usebackq" %%B in (`powershell -Command "(New-Object Net.WebClient).DownloadString('%%I').Split([Environment]::NewLine,[StringSplitOptions]::RemoveEmptyEntries)[-1].Trim().Replace('_pd60000','_pd0')"`) do (
    set URL=%%B
    )
    )
    rem echo "!URL!"
    for /f "tokens=3 delims=:?" %%A in ("%%I") do (
    rem echo "%%A"
    if not "%%J"=="" powershell -Command "(New-Object Net.WebClient).DownloadFile('%%J', '%cd%\%%A.srt')"
    set ID=%%A
    :try
    youtube-dl "!URL!" -o "!ID!.mp4"
    if not exist "!ID!.mp4" (
    cls
    echo Varakozas a videora...
    timeout 30
    goto try
    )
    set ID=%%K
    if not "%%L"=="" powershell -Command "(New-Object Net.WebClient).DownloadFile('%%L', '%cd%\!ID!.srt')"
    :try
    youtube-dl "!URL!" -o "!ID!.mp4"
    if not exist "!ID!.mp4" (
    cls
    echo Varakozas a videora...
    timeout 30
    goto try
    )
    )
    goto :EOF

    :invalid
    echo Ervenytelen URL
    echo
    @@ -53,25 +56,47 @@ echo Hasznalat: %~nx0 URL
    echo pl.: %~nx0 https://nava.hu/id/*
    if %0 == "%~0" pause
    goto :EOF

    JScript */
    var INPUT = WSH.Arguments(0);
    var ID = INPUT.split('/')[4];
    var SUB = '';
    var TITLE = '';
    var x = new ActiveXObject('Microsoft.XMLHTTP');
    var UA = String('\x4D\x6F\x7A\x69\x6C\x6C\x61\x2F\x35\x2E\x30\x20\x28\x57\x69\x6E\x64\x6F\x77\x73\x20\x4E\x54\x20\x31\x30\x2E\x30\x3B\x20\x57\x69\x6E\x36\x34\x3B\x20\x78\x36\x34\x29\x20\x41\x70\x70\x6C\x65\x57\x65\x62\x4B\x69\x74\x2F\x35\x33\x37\x2E\x33\x36\x20\x28\x4B\x48\x54\x4D\x4C\x2C\x20\x6C\x69\x6B\x65\x20\x47\x65\x63\x6B\x6F\x29\x20\x43\x68\x72\x6F\x6D\x65\x2F\x38\x30\x2E\x30\x2E\x33\x39\x38\x37\x2E\x31\x34\x39\x20\x53\x61\x66\x61\x72\x69\x2F\x35\x33\x37\x2E\x33\x36');

    x.open('GET',String(INPUT),true);
    x.setRequestHeader('User-Agent',UA);
    x.send('');
    while (x.readyState!=4) {WSH.Sleep(50)};

    if (x.responseText.indexOf('"tracks":[{"file":"') !== -1) {
    SUB = '|https:'+x.responseText.split('"tracks":[{"file":"')[1].split('"')[0].replace(/\\/g,'');
    SUB = 'https:'+x.responseText.split('"tracks":[{"file":"')[1].split('"')[0].replace(/\\/g,'');
    }
    if (x.responseText.indexOf('<meta property="og:title" content="') !== -1) {
    TITLE = x.responseText.split('<meta property="og:title" content="')[1].split('"')[0].replace(/\\/g,'');
    }

    var htmlfile = WSH.CreateObject('htmlfile'), JSON;
    htmlfile.write('<meta http-equiv="x-ua-compatible" content="IE=9" />');
    htmlfile.close(JSON = htmlfile.parentWindow.JSON);

    if (!TITLE){
    x.open('GET',String('\x68\x74\x74\x70\x73\x3A\x2F\x2F\x6E\x61\x76\x61\x2E\x68\x75\x2F\x77\x70\x2D\x63\x6F\x6E\x74\x65\x6E\x74\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x68\x6D\x73\x2D\x6E\x61\x76\x61\x2F\x69\x6E\x74\x65\x72\x66\x61\x63\x65\x2F\x63\x6C\x61\x73\x73\x65\x73\x2F\x63\x61\x63\x68\x65\x4D\x61\x6E\x61\x67\x65\x72\x2E\x70\x68\x70\x3F\x73\x6F\x6C\x72\x55\x72\x6C\x3D\x26\x62\x6C\x6F\x67\x49\x64\x3D\x32\x26\x69\x64\x3D')+ID,true);
    x.setRequestHeader('User-Agent',UA);
    x.send('');
    while (x.readyState!=4) {WSH.Sleep(50)};

    var info = JSON.parse(x.responseText);
    TITLE = info.title;
    }
    TITLE = decodeURI(encodeURI(TITLE).replace(/%C3%AD/g,'%69').replace(/%C3%A9/g,'%65').replace(/%C3%A1/g,'%61').replace(/%C3%B3|%C3%B6|%C5%91/g,'%6F').replace(/%C3%BA|%C3%BC|%C5%B1/g,'%75').replace(/%C3%8D/g,'%49').replace(/%C3%89/g,'%45').replace(/%C3%81/g,'%41').replace(/%C3%93|%C3%96|%C5%90/g,'%4F').replace(/%C3%9A|%C3%9C|%C5%B0/g,'%55')).replace(/[^a-z0-9.\-]/gi, '_');
    if (!TITLE) TITLE = ID;

    x.open('GET',String('\x68\x74\x74\x70\x73\x3A\x2F\x2F\x6E\x61\x76\x61\x2E\x68\x75\x2F\x77\x70\x2D\x63\x6F\x6E\x74\x65\x6E\x74\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x68\x6D\x73\x2D\x6E\x61\x76\x61\x2F\x69\x6E\x74\x65\x72\x66\x61\x63\x65\x2F\x67\x65\x74\x50\x6C\x61\x79\x65\x72\x54\x6F\x6B\x65\x6E\x2E\x70\x68\x70\x3F\x70\x72\x65\x66\x69\x78\x3D\x32\x26\x76\x69\x64\x3D')+ID,true);
    x.setRequestHeader('User-Agent',UA);
    x.send('');
    while (x.readyState!=4) {WSH.Sleep(50)};
    var htmlfile = WSH.CreateObject('htmlfile'), JSON;
    htmlfile.write('<meta http-equiv="x-ua-compatible" content="IE=9" />');
    htmlfile.close(JSON = htmlfile.parentWindow.JSON);

    var res = JSON.parse(x.responseText);
    WSH.Echo(String('\x68\x74\x74\x70\x73\x3A\x2F\x2F\x73\x74\x72\x6C\x62\x2E\x6E\x61\x76\x61\x2E\x68\x75\x2F\x6C\x62\x73\x2F\x6E\x61\x76\x61\x68\x75\x73\x2F\x5F\x64\x65\x66\x69\x6E\x73\x74\x5F\x2F\x61\x6D\x6C\x73\x74\x3A')+res.vid+String('\x3F\x74\x79\x70\x65\x3D\x6D\x33\x75\x38\x26\x73\x65\x73\x73\x69\x64\x3D')+res.token+SUB);
    WSH.Echo(String('\x68\x74\x74\x70\x73\x3A\x2F\x2F\x73\x74\x72\x6C\x62\x2E\x6E\x61\x76\x61\x2E\x68\x75\x2F\x6C\x62\x73\x2F\x6E\x61\x76\x61\x68\x75\x73\x2F\x5F\x64\x65\x66\x69\x6E\x73\x74\x5F\x2F\x61\x6D\x6C\x73\x74\x3A')+res.vid+String('\x3F\x74\x79\x70\x65\x3D\x6D\x33\x75\x38\x26\x73\x65\x73\x73\x69\x64\x3D')+res.token+'|'+ID+'|'+TITLE+'|'+SUB);
  10. a-sync created this gist Mar 31, 2020.
    77 changes: 77 additions & 0 deletions nava.downloader.bat
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,77 @@
    @if (@a==@b) @end /*
    @echo off
    setlocal EnableDelayedExpansion
    if "%~1"=="/?" goto usage
    if %0 == "%~0" (
    title nava.downloader.bat
    set /p INPUT="URL: "
    ) else (
    set "INPUT=%~1"
    )
    if "%INPUT%"=="" goto usage
    if /i "%INPUT:~0,5%"=="https" (
    if /i "%INPUT:~6,13%"=="//nava.hu/id/" goto valid
    if /i "%INPUT:~6,16%"=="//nava.hu/embed/" goto valid
    )
    goto invalid
    :valid
    where /q youtube-dl
    if ERRORLEVEL 1 (
    powershell -Command "(New-Object Net.WebClient).DownloadFile('https://yt-dl.org/latest/youtube-dl.exe', '%~dp0\youtube-dl.exe')"
    )
    rem echo "%INPUT%"
    for /f "tokens=1,2 delims=|" %%I in ('cscript /nologo /e:jscript "%~f0" "%INPUT%"') do (
    rem echo "%%I"
    rem echo "%%J"
    set URL=%%I
    if "!URL:~-1!"=="=" (
    for /f "usebackq" %%B in (`powershell -Command "(New-Object Net.WebClient).DownloadString('%%I').Split([Environment]::NewLine,[StringSplitOptions]::RemoveEmptyEntries)[-1].Trim().Replace('_pd60000','_pd0')"`) do (
    set URL=%%B
    )
    )
    rem echo "!URL!"
    for /f "tokens=3 delims=:?" %%A in ("%%I") do (
    rem echo "%%A"
    if not "%%J"=="" powershell -Command "(New-Object Net.WebClient).DownloadFile('%%J', '%cd%\%%A.srt')"
    set ID=%%A
    :try
    youtube-dl "!URL!" -o "!ID!.mp4"
    if not exist "!ID!.mp4" (
    cls
    echo Varakozas a videora...
    timeout 30
    goto try
    )
    )
    )
    goto :EOF
    :invalid
    echo Ervenytelen URL
    echo
    :usage
    echo Hasznalat: %~nx0 URL
    echo pl.: %~nx0 https://nava.hu/id/*
    if %0 == "%~0" pause
    goto :EOF
    JScript */
    var INPUT = WSH.Arguments(0);
    var ID = INPUT.split('/')[4];
    var SUB = '';
    var x = new ActiveXObject('Microsoft.XMLHTTP');
    var UA = String('\x4D\x6F\x7A\x69\x6C\x6C\x61\x2F\x35\x2E\x30\x20\x28\x57\x69\x6E\x64\x6F\x77\x73\x20\x4E\x54\x20\x31\x30\x2E\x30\x3B\x20\x57\x69\x6E\x36\x34\x3B\x20\x78\x36\x34\x29\x20\x41\x70\x70\x6C\x65\x57\x65\x62\x4B\x69\x74\x2F\x35\x33\x37\x2E\x33\x36\x20\x28\x4B\x48\x54\x4D\x4C\x2C\x20\x6C\x69\x6B\x65\x20\x47\x65\x63\x6B\x6F\x29\x20\x43\x68\x72\x6F\x6D\x65\x2F\x38\x30\x2E\x30\x2E\x33\x39\x38\x37\x2E\x31\x34\x39\x20\x53\x61\x66\x61\x72\x69\x2F\x35\x33\x37\x2E\x33\x36');
    x.open('GET',String(INPUT),true);
    x.setRequestHeader('User-Agent',UA);
    x.send('');
    while (x.readyState!=4) {WSH.Sleep(50)};
    if (x.responseText.indexOf('"tracks":[{"file":"') !== -1) {
    SUB = '|https:'+x.responseText.split('"tracks":[{"file":"')[1].split('"')[0].replace(/\\/g,'');
    }
    x.open('GET',String('\x68\x74\x74\x70\x73\x3A\x2F\x2F\x6E\x61\x76\x61\x2E\x68\x75\x2F\x77\x70\x2D\x63\x6F\x6E\x74\x65\x6E\x74\x2F\x70\x6C\x75\x67\x69\x6E\x73\x2F\x68\x6D\x73\x2D\x6E\x61\x76\x61\x2F\x69\x6E\x74\x65\x72\x66\x61\x63\x65\x2F\x67\x65\x74\x50\x6C\x61\x79\x65\x72\x54\x6F\x6B\x65\x6E\x2E\x70\x68\x70\x3F\x70\x72\x65\x66\x69\x78\x3D\x32\x26\x76\x69\x64\x3D')+ID,true);
    x.setRequestHeader('User-Agent',UA);
    x.send('');
    while (x.readyState!=4) {WSH.Sleep(50)};
    var htmlfile = WSH.CreateObject('htmlfile'), JSON;
    htmlfile.write('<meta http-equiv="x-ua-compatible" content="IE=9" />');
    htmlfile.close(JSON = htmlfile.parentWindow.JSON);
    var res = JSON.parse(x.responseText);
    WSH.Echo(String('\x68\x74\x74\x70\x73\x3A\x2F\x2F\x73\x74\x72\x6C\x62\x2E\x6E\x61\x76\x61\x2E\x68\x75\x2F\x6C\x62\x73\x2F\x6E\x61\x76\x61\x68\x75\x73\x2F\x5F\x64\x65\x66\x69\x6E\x73\x74\x5F\x2F\x61\x6D\x6C\x73\x74\x3A')+res.vid+String('\x3F\x74\x79\x70\x65\x3D\x6D\x33\x75\x38\x26\x73\x65\x73\x73\x69\x64\x3D')+res.token+SUB);