问题描述:
执行py脚本时提示:ModuleNotFoundError: No module named 'apscheduler'
明明已经pip安装了相关包,为啥还没引用到?
解决思路:
1. 找到执行时site-packages的路径
由于主机上同时有python2和python3版本,环境默认2.7,本人使用python3.6。
查看路径只需三步:
python3
from distutils.sysconfig import get_python_lib
print(get_python_lib())
目前使用的路径即为: /usr/lib/python3.6/site-packages
2. 路径下查找是否存在'apscheduler'包
没有找到
3.时间倒回10分钟前,官网下载 https://pypi.org/project/APScheduler/#files
文件上传主机,pip3.6 install APScheduler-3.6.3-py2.py3-none-any.whl (本人使用pip3.6,可按实际情况替换)
查看安装后路径为:/opt/py3/lib/python3.6/site-packages
原来是安装和引用路径不一致导致的
解决方法:
先备份,cd /usr/lib/python3.6
mv site-packages site-packages_cp
创建软连接直接引用,ln -s /opt/py3/lib/python3.6/site-packages/ /usr/lib/python3.6/
最终脚本执行成功,大功告成!