2017-09-29 3 views
1

タスクスケジューラでバッチファイルを実行した後に開いたまま:Python.exeは、私はタスクスケジューラにおけるスケジュールしようとしている

  1. 実行するバッチファイル
  2. をconda環境
  3. は、Pythonプログラムを実行して有効に
  4. Exitコマンドプロンプト

すべては、コマンドプロンプトが閉じている間python.exeウィンドウが開いたままになります除き、正常に動作します。

私のバッチファイル:(スリープを実行するPythonコードのためであることは、数秒かかります。)

call activate python2 
start C:\Users\Chris\Anaconda3\envs\python2\python.exe testtest.py 
sleep 30 
exit 

私のPythonスクリプト:

driver = webdriver.Chrome(executable_path="C:\path\to\chromedriver") 
driver.get('http://website.com') 

# Find email and pw fields and then fill them in 
email = driver.find_element_by_id("user_email") 
email.send_keys('[email protected]') 
pw = driver.find_element_by_id("user_password") 
pw.send_keys('password') 

# Click on sign-in button 
driver.find_element_by_class_name("button").click() 
time.sleep(5) 

# Click on save button to update 
driver.find_element_by_class_name("button").click() 

# Close driver 
driver.close() 

最後の事、プログラム/スクリプトバッチファイルで引数はなく、開始位置はバッチファイルがあるディレクトリにあります。

助けてください。

答えて

0

私はPythonの専門家ではありませんが、私はあなたがただcall sys.exit() or quit()する必要があると思います。

代わりに睡眠を使用して、待機オプションを指定して起動する呼び出し、十分な長さではない可能性が長すぎるかを待っているの:

call activate python2 
start /WAIT C:\Users\Chris\Anaconda3\envs\python2\python.exe testtest.py 
exit 

あなたは何もするバッチファイルを必要としない場合は、あなただけで起動することができますPythonのスクリプトと終了。

+0

/WAITは完全に機能しますが、sys.exit()とquit()はPythonスクリプトで記述されても機能しません。 – Chris

+0

私は多分、終了する必要があるのは、起動コマンドで作成されたコンソールウィンドウであり、Pythonスクリプトではないと思うかもしれません。たぶんstartの代わりに別の呼び出しステートメントを使うのがよいでしょう。 Pythonスクリプトを別のウィンドウで実行する必要がありますか? – DSway

+0

私は実際にPythonスクリプトを別のウィンドウで実行したくありません。それが同じもので走っていれば、それは素晴らしいことでしょう。 私はpythonステートメントを呼び出そうとしましたが、コマンドプロンプトが閉じないようになりました。 exitコマンドを表示しますが、実際には終了しません。 – Chris

関連する問題