在服务器上运行python文件详细步骤
作者:达芬奇要当程序员
前置准备
如何在个人服务器上运行python文件,首先我们需要准备的一些东西:
- 有自己的云服务器,可以在腾讯云或者阿里云等商户租借服务器
- 能够使用xshell等ssh连接工具软件连接到自己的服务器
- 下载Linux版本的Anaconda用来运行python文件的安装环境
详细步骤
一,在服务器安装Anaconda
下载安装包
首先我们先下载Anaconda安装包,下载地址https://repo.anaconda.com/archive/
第二,找到我们要下载的安装包,注意是Linux版本,可以根据自己需求安装所需版本
下载可能有点慢,建议使用迅雷下载。
上传文件到服务器
下载完安装包后打开Xshell,连接自己的服务器。
可以跳转到指定文件夹下安装(cd /test),也可以新建文件夹用来安装(mkdir test)
跳转到安装文件夹下后输入命令rz,找到安装包上传文件。
上传成功后输入命令ls,可以看到当前文件是白色的,没有执行权限,输入命令修改权限
chmod u+x Anaconda3-2022.05-Linux-x86_64.sh
输入ls查看,安装包显示绿色就ok。
安装环境
上传完成后就可以执行安装命令
sh Anaconda3-2022.05-Linux-x86_64.sh
输入python进行测试是否安装完成。出现如下即为成功安装。
然后退出python,输入exit();
接下来我们需进行以下环境配置
vim ~/.bashrc
输入O;
在配置文件空白处添加如下配置,按“i”进入编辑模式:
#为了避免与其他服务器用户产生命令冲突,使用自己的英文名+Python替代python alias namePython='/root/anaconda3/bin/python' #这里写anaconda的安装路径 export PATH="/root/anaconda3/bin:$PATH"
完成后按“Esc”,退出编辑模式;紧接着按“:”,输入“wq!”保存退出。
激活文件
source ~/.bashrc
再次验证
conda
conda命令可以使用,这样我们就安装完成了。
二,创建虚拟环境
创建环境
conda create -n py39 python=3.9.12
创建完成后查看当前存在哪些虚拟环境
conda env list
激活虚拟环境,这里是你自己的环境名字
source activate your_env_name
查看安装了哪些包。自带的包较少,有些程序需要的包需要自己额外导入。
conda list
conda install package_name(包名)
一些其他命令:
conda update conda: 检查更新当前conda conda search XXX 搜索包,查看可安装版本 conda remove -n py36 --all 删除环境 conda deactivate 退出虚拟环境,conda4之前版本:source deactivate pip install --upgrade <包的名字> 更新包 pip install python_igraph (import igraph包)
三,测试执行python文件
执行python文件
- 我们在当前环境下输入rz命令上传.py文件。
- 上传成功后输入执行python文件命令:
nohup python3 -u main.py >> my.log 2>&1 &
查看进程状态
- 在使用nohup启动python时,会生成一个进程ID
- 可以使用 jobs -l 来查看当前终端的全部进程(该命令只适用于该终端窗口,若再开一个窗口需适用ps命令查看全局进程,如下命令)
Running说明程序正在成功运行。
- 还可以对改python程序进行暂停、恢复、杀死等操作
jobs -l (当前终端查看全部进程) ps -aux|grep 进程号 (全局各个新终端查看指定进程) ps -ef (全局全部进程) kill -STOP 进程号 (命令可以直接暂停一个后台任务) kill -CONT 进程号 (命令可以直接恢复一个后台任务) kill -9 进程号 (杀死进程)
附:解决在服务器上运行python程序报错no module
在服务器上运行Python程序,遇到"no module"的错误说明Python解释器无法找到需要导入的模块。
以下是一些可能的解决方法:
确认所需的模块是否已经安装:在命令行中使用
pip list
命令,查看已安装的Python模块。如果缺少所需的模块,使用pip install
命令安装它们。检查Python解释器的版本:某些模块可能依赖于特定版本的Python解释器。确保已经安装了正确版本的Python解释器,并使用
python --version
命令确认当前使用的Python版本。检查Python路径设置:在服务器上,可能存在多个Python解释器或多个Python路径。确保程序中使用的Python解释器与服务器上的Python路径相匹配。
检查sys.path:Python解释器使用sys.path变量来查找模块。在程序中,可以使用
import sys; print(sys.path)
语句输出当前的sys.path值。确保所需的模块的路径包含在sys.path中。添加模块路径:如果模块不在默认的sys.path中,可以使用sys.path.append()命令将所需的模块路径添加到sys.path中,以使Python解释器能够找到它。
检查模块命名冲突:某些模块的名称可能与Python标准库或其他已安装的模块名称冲突。请确保您的程序中没有使用与其他模块相同的名称。
重新部署程序:如果以上方法都没有解决问题,尝试重新部署程序。确保所有依赖的模块都正确安装,并且程序文件正确地放置在服务器上。
总结
做完这些我们已经能够在服务器上成功运行python文件,要注意的是脚本文件不依赖于图形界面,并且根据你的服务器环境和脚本需要的库,可能会需要安装额外的依赖项。
到此这篇关于在服务器上运行python文件的文章就介绍到这了,更多相关服务器运行python文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!