Bluemix上Python应用启动ERR import MySQLdb ImportError: No module named MySQLdb

在将“Bluemix云端数据库服务ClearDB MySQL使用示例———Python开发投票程序”的程序通过“cf”工具上传到Bluemix上后,启动失败,根据提示使用“cf logs pyVote --recent”命令查看日志中提示:ERR import MySQLdb ImportError: No module named MySQLdb,如下图:



解决方法:

修改项目中的“requirements.txt”文件。

这是一个纯文本的文件,只要在里面添加一句就可以:

MySQL-python==1.2.3
然后再执行:

cf push pyVote
上传应用程序代码,之后就会看到类似的提示:


Bluemix中会使用pip根据“requirements.txt”文件中声明的依赖项去安装所需要的依赖,安装成功后就可以启动成功了。

关于“requirements.txt”文件

Bluemix是使用“requirements.txt”文件名,而实际应该是“requirements.pip”,这是 pip(包管理工具)的功能。

pip 可以根据 requirements.txt 安装类库。

在很多Python项目中都包含一个requirements.pip文件,里面写的是一些包的名称和版本之类的信息,这是做什么用的呢?
比如一个requirements.pip文件内容如下:

html5lib==0.999
ipdb==0.8
ipython==2.3.1
mongo==0.2.0
path.py==7.0
python-dateutil==2.3
requests==2.5.0
unicodecsv==0.9.4
这里面写的是运行这个项目所需要的环境,包括一些库,运行之前需要使用pip install -r requirements.pip命令安装这些库。

Python项目中经常会带requirements.txt文件,里面是项目所依赖的包的列表,也就是依赖关系清单,这个清单也可以使用pip命令自动生成。
pip命令:

pip freeze > requirements.txt
这样就自动生成requirements.txt了。如果需要生成在虚拟环境下的依赖关系,需要先进入虚拟环境。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值