本人想使用宝塔快速配置应用服务器跑python代码,windows版宝塔无法安装python,只能使用linux版本宝塔。而我的代码是在windows系统下编写的,此前我也没用接触过linux,所以遇到了很多零零碎碎的问题,在这里记录一下。
1、不要直接在宝塔里上传代码,使用winscp将代码和其他文件上传到宝塔。直接上传总是显示syntax error near unexpected token。
2、不要在”项目管理器-模块-模块管理“中添加python无法自动识别但我们需要的包,安装特别慢。
可以①直接用winscp将本地python包直接上传到宝塔。本地文件用everything搜索路径,安装路径参考添加项目后宝塔自动识别后默认安装的包的位置。速度快,适合独立的包。我用这个方法装jieba成功了,但是装pandas时,尽管也加了numpy但总显示Unable to import required dependencies:numpy: 。
或者②在终端里手动安装。代码:
/www/wwwroot/自建的文件夹/乱码文件夹/bin/pip install jieba -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
乱码文件夹是指在项目管理器添加项目后,宝塔自动生成的一个由一串乱码命名的文件夹。注意,这个文件夹不可以重命名,否则识别会出问题。
值得说明的是,宝塔不支持用whl安装。
3、python代码首行写#! /usr/bin/env python3 除python版本外,以上代码无需任何修改。
4、python代码中的路径使用绝对路径,比如/www/wwwroot/自建的文件夹名/xxx.csv。不要用./或是直接写文件名,linux的相对路径好像不是这样的,会显示No such file or directory。
5、在终端启动文件可能不行,显示permission denied,这时候直接在python项目管理器里启动。
6、启动文件后,代码是否运行成功以日志为准。可能显示启动失败,但其实运行成功了。