У меня есть python скрипт, который я пытаюсь запускать ежедневно, используя Windows Task Scheduler. Основываясь на некоторых потоках SO, я написал пакетный скрипт и создал задачу планировщика. Я использую Anaconda в качестве виртуальной среды и версия 4.5.11. Когда я запускаю сценарий python из «Anaconda Prompt» или «Windows CMD», он работает просто отлично.
Однако, когда я использую пакетный скрипт для выполнения моего python скрипта из "Windows CMD", он не может найти мою предполагаемую среду conda.
Вот мой пакетный скрипт,
set original_dir=%CD%
set conda_root_dir=C:\Anaconda3\Scripts
call %conda_root_dir%\activate.bat
cd C:\Anaconda3\Scripts
call activate yttv_crawler
python "C:\__ Work Station\Py_Projects\YT_TV_Crawler\index.py"
call deactivate
cd %original_dir%
exit /B 1
После запуска пакетного сценария вручную из CMD для целей тестирования я получаю это -
C:\Users\aafaysal\Desktop>yt_tv_crawler.bat
C:\Users\aafaysal\Desktop>set original_dir=C:\Users\aafaysal\Desktop
C:\Users\aafaysal\Desktop>set venv_root_dir=C:\Anaconda3\envs\yttv_crawler
C:\Users\aafaysal\Desktop>set conda_root_dir=C:\Anaconda3\Scripts
C:\Users\aafaysal\Desktop>call C:\Anaconda3\Scripts\activate.bat
(base) C:\Users\aafaysal\Desktop>cd C:\Anaconda3\Scripts
(base) C:\Anaconda3\Scripts>call activate yttv_crawler
Could not find conda environment: yttv_crawler
You can list all discoverable environments with `conda info --envs`.
(base) C:\Anaconda3\Scripts>python "C:\__ Work
Station\Py_Projects\YT_TV_Crawler\index.py"
Traceback (most recent call last):
File "C:\__ Work Station\Py_Projects\YT_TV_Crawler\index.py", line 1, in
<module>
from data_access_layer import save_videos
File "C:\__ Work Station\Py_Projects\YT_TV_Crawler\data_access_layer.py",
line 1,
in <module> import pymysql
ModuleNotFoundError: No module named 'pymysql'
(base) C:\Anaconda3\Scripts>call deactivate
C:\Anaconda3\Scripts>cd C:\Users\aafaysal\Desktop
C:\Users\aafaysal\Desktop>exit /B 1
Но мой conda среда существует.
(base) C:\Users\aafaysal>conda --version
conda 4.5.11
(base) C:\Users\aafaysal>conda info --envs
# conda environments:
#
base * C:\Anaconda3
iqtools C:\Anaconda3\envs\iqtools
yttracker C:\Anaconda3\envs\yttracker
yttv_crawler C:\Anaconda3\envs\yttv_crawler
Вот список переменных среды системного пути.
Пожалуйста, помогите мне.
NB: я знаю, что есть много подобных вопросов, и я почти все проверил / попробовал и до сих пор не смог это исправить.