I wrote the script below to login to netflix. It doesn't work (see output below). What am I missing? Any recommendations would be appreciated. Please do explain any solutions that you share.
@if (@CodeSection == @Batch) @then
/*
REM @echo OFF
set username=MyUserName
set password=MyPassword
if exist "%localappdata%\google\chrome\application\chrome.exe" (
set browser_exe="%localappdata%\google\chrome\application\chrome.exe"
)
if exist "%PROGRAMFILES(x86)%\google\chrome\application\chrome.exe" (
set browser_exe="%PROGRAMFILES(x86)%\google\chrome\application\chrome.exe"
)
if exist "%PROGRAMFILES%\google\chrome\application\chrome.exe" (
set browser_exe="%PROGRAMFILES%\google\chrome\application\chrome.exe"
)
cscript //E:JScript //nologo "%~f0" %*
set SendKeys=CScript //nologo //E:JScript "%~F0"
rem : start the browser and navigate to neflix
%browser_exe% --start-fullscreen --app=https://www.netflix.com/login
timeout /t 10
%SendKeys% "{TAB}"
%SendKeys% "{TAB}"
%SendKeys% "username"
%SendKeys% "{TAB}"
%SendKeys% "password"
%SendKeys% "{ENTER}"
exit /b
@end
*/
// JScript section
var WshShell = WScript.CreateObject("WScript.Shell");
WshShell.SendKeys(WScript.Arguments(0));
I get this output:
C:\WINDOWS\system32>"C:\Program Files (x86)\google\chrome\application\chrome.exe" --start-fullscreen --app=https://www.netflix.com/login
C:\WINDOWS\system32>timeout /t 10
C:\WINDOWS\system32>CScript //nologo //E:JScript "C:\Test_Script.bat" "{TAB}" C:\Test_Script.bat(59, 3) Microsoft JScript compilation error: Expected '/'
C:\WINDOWS\system32>CScript //nologo //E:JScript "C:\Test_Script.bat" "{TAB}" C:\Test_Script.bat(59, 3) Microsoft JScript compilation error: Expected '/'
C:\WINDOWS\system32>CScript //nologo //E:JScript "C:\Test_Script.bat" "username" C:\Test_Script.bat(59, 3) Microsoft JScript compilation error: Expected '/'
C:\WINDOWS\system32>CScript //nologo //E:JScript "C:\Test_Script.bat" "{TAB}" C:\Test_Script.bat(59, 3) Microsoft JScript compilation error: Expected '/'
C:\WINDOWS\system32>CScript //nologo //E:JScript "C:\Test_Script.bat" "password" C:\Test_Script.bat(59, 3) Microsoft JScript compilation error: Expected '/'
C:\WINDOWS\system32>CScript //nologo //E:JScript "C:\Test_Script.bat" "{ENTER}" C:\Test_Script.bat(59, 3) Microsoft JScript compilation error: Expected '/'
CodePudding user response:
Does this completely untested batch-file help you out?
It uses VBScript instead of JScript; just replace the login and password on lines 3 and 4 respectively, and as needed. Do not change anything else whilst testing it.
<!-- :
@Echo Off
Set "[email protected]"
Set "usr_pass=P455w0rd"
Set "usr_chrome="
For %%G In (
"%ProgramFiles(x86)%"
"%ProgramFiles%"
"%LocalAppData%"
) Do If Exist "%%~G\Google\Chrome\Application\chrome.exe" Set "usr_chrome=%%~G\Google\Chrome\Application\chrome.exe"
If Defined usr_chrome %SystemRoot%\System32\cscript.exe //NoLogo "%~f0?.wsf" "%usr_chrome%" "%usr_name%" "%usr_pass%"
Exit /B
-->
<Job>
<Script Language="VBScript">
Dim ObjShell, MyChrome
Set ObjShell = WScript.CreateObject("WScript.Shell")
MyChrome = Chr(34) & WScript.Arguments(0) & Chr(34)
ObjShell.Run MyChrome & "--start-fullscreen --app=""https://www.netflix.com/login""", 9
WScript.Sleep 5000
ObjShell.SendKeys "{TAB}"
ObjShell.SendKeys "{TAB}"
ObjShell.SendKeys(WScript.Arguments(1))
ObjShell.SendKeys "{TAB}"
ObjShell.SendKeys(WScript.Arguments(2))
ObjShell.SendKeys "{ENTER}"
</Script>
</Job>
There is absolutely no need to be running this script 'As administrator', i.e. elevated, so please do not unnecessarily try to do so.
I have use a wait time of 5 seconds, (5000), to allow your browser to open fully to the page you require before sending the keystrokes. If the login does not work as expected, you may need to increase that time.
