背景

原本采用docker运行python程序,奈何pip安装一直异常,无奈曲线救国,直接在linux运行python程序

安装python3.6.8

安装教程

完成后,linux安装了2个版本的python
(centos自带2.7保留,安装了3.6.8版本)

导出依赖到文件

本地项目先导出依赖,package很多时,一个一个安装?我们不傻,所以选择导出导文件(依赖特别少可以不导)指令如下

pip freeze > requirements.txt

上传代码(包含上一步requirements.txt文件)

windows工具: mobaxterm
mac/linux: 使用scp指令,文件上传加上 -r 参数
具体使用参考博客

安装packages

pip3 install --default-timeout=999 --no-cache-dir -r requirements.txt

运行

  1. 写个脚本,名字任意。例如:start.sh
#!/bin/bash
# 进入自己的项目目录
cd /opt/python-build
# 运行(注意,如果python没有软链接到新版本,则使用python3 )
python -u py-mail.py
  1. 给start.sh文件授权
chmod 775 start.sh
  1. 执行启动指令,后台运行
./start.sh > crawl.log &

上述指令日志.log可以任务命令

4.查看日志

tail -200f crawl.log

遇到的问题

  1. pip不可用,高版本python默认安装pip直接使用即可,如果没有执行如下指令
sudo yum install python-pip python-wheel
  1. 很多博客使用pip install安装,实际上是安装到python2.7的site-packages里(解决方案:使用pip3 install -r requirements.txt)
  2. 启动报错ImportError: No module named dateutil
    是因为python找不到dateutil包,解决办法:
pip3 install --default-timeout=999 --no-cache-dir -r requirements.txt

特别注意不同版本造成的问题

python2.7使用python指令和pip python3.xx使用python3指令pip3 ## 其他 [pip官方安装教程](https://packaging.python.org/tutorials/installing-packages/)

自学python,错误之处请指出

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐