LOADING

2021年1月

如果是crontab 执行 python selenium 的话 会出现一个因为环境变量引起的报错
(unknown error: DevToolsActivePort file doesn't exist)
(The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.)
解决方案是命令行改成

export DISPLAY=:0.0 && /usr/local/bin/python3.7 /srv/project/manage.py report >> /var/log/csj_login.log # django-cronjobs for priject

在Linux/Unix类操作系统上, DISPLAY用来设置将图形显示到何处. 直接登陆图形界面或者登陆命令行界面后使用startx启动图形, DISPLAY环境变量将自动设置为:0:0, 此时可以打开终端, 输出图形程序的名称(比如xclock)来启动程序, 图形将显示在本地窗口上

  1. 下载指定版本下文中以3.7.3为例
wget https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tgz
  1. 解压
tar zxvf Python-3.7.3.tgz
  1. 切换目录
cd Python-3.7.3
  1. 编译
./configure --with-ssl
make
sudo make install
–with-ssl必须加上,否则使用pip安装第三方包时,会引发ssl错误。导致无法使用
  1. 安装python依赖
sudo apt-get install python-dev python-setuptools python-pip python-smbus build-essential libncursesw5-dev libgdbm-dev libc6-dev zlib1g-dev libsqlite3-dev tk-dev libssl-dev openssl libffi-dev
  1. 添加软连接 (方便区分不同版本)

添加python3的软链接

sudo ln -s /usr/local/bin/python3.7 /usr/bin/python3.7

添加 pip3 的软链接

sudo ln -s /usr/local/bin/pip3.7 /usr/bin/pip3.7

$toTime = \PhpOffice\PhpSpreadsheet\Shared\Date::excelToTimestamp($oneSheet->getCell("A" . $j)->getValue());
$day = date('Y-m-d',$toTime);