完成我的一个 Flask 项目后,我像其他人一样将其上传到 github 上。 2-3 个月后,我在另一台机器上下载了整个 gitbe 存储库来运行它。但是,该应用程序无法运行,因为未找到提供以下消息的包
ModuleNotFoundError: No module named 'Flask'
所以我最终下载了从 Flask、SQLalchemy 等开始的所有包!但我被 MySQLdb
困住了:
(MYAPPENV) C:\Users\hp\myapp>python run.py
Traceback (most recent call last):
File "run.py", line 1, in <module>
from app import app
File "C:\Users\hp\myapp\app\__init__.py", line 4, in <module>
from instance.config import engine
File "C:\Users\hp\myapp\instance\config.py", line 52, in <module>
engine = create_engine("mysql://root:root@localhost/MYAPPDB")
File "C:\Users\hp\AppData\Local\Programs\Python\Python37-32\lib\site-packages\sqlalchemy\engine\__init__.py", line 425, in create_engine
return strategy.create(*args, **kwargs)
File "C:\Users\hp\AppData\Local\Programs\Python\Python37-32\lib\site-packages\sqlalchemy\engine\strategies.py", line 81, in create
dbapi = dialect_cls.dbapi(**dbapi_args)
File "C:\Users\hp\AppData\Local\Programs\Python\Python37-32\lib\site-packages\sqlalchemy\dialects\mysql\mysqldb.py", line 102, in dbapi
return __import__('MySQLdb')
ModuleNotFoundError: No module named 'MySQLdb'
有人可以帮忙解决这个问题吗?我在 Windows 机器上使用 python37。我什至尝试下载 mysqlclient 等软件包,但没有成功。
最佳答案
我读到python3不支持mysqldb
看起来当您尝试连接到数据库时,默认情况下您正在使用 mysql db 连接到数据库!
您需要通过编辑 DATABASE_URI 配置来更改它
但在您需要安装连接器扩展之前:
用这个命令:
pip install mysql-connector-python
并根据this documentation您可以像这样编辑您的 DATABASE_URI 并更改默认连接器:
DATABSE_URI='mysql+mysqlconnector://{user}:{password}@{server}/{database}'.format(user='your_user', password='password', server='localhost', database='dname')
我希望这会有所帮助...
关于python - 模块未找到错误 : No module named 'MySQLdb' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53024891/