由于python版本比较多,python2与python3兼容又不好,导致很多扩展库版本也很多,安装扩展库就容易碰到问题,有些直接yum就可以安装,有些需要用pip安装,有些需要直接下载安装,我这里就列举几个我碰到的吧。
可以用virtualenv这个虚拟环境
也可以用conda这个工具,我这里就是手动安装没有借助这种扩展库管理工具。
先把本地python项目上传到服务器,可以用rz工具,也可以用svn,我是先运行,再根据报错信息添加扩展库,这里安装python34。
1.安装yum资源扩展仓库:
yum install https://centos7.iuscommunity.org/ius-release.rpm -y
如果还没安装python3则安装python34:
yum install python34 -y
2.先安装pip3: yum search pip
可以看到:
安装pip3: yum install python34-pip -y
然后看版本信息:pip3 –version 能看到版本信息则安装成功。
3.运行spider.py:python3 spider.py
首先看一下爬虫引用了那些扩展:
看到报错(如果报错跟re相关,则直接安装正则扩展即可:pip3 install regex):
可以看到缺少mysql.connector扩展
安装:yum search mysql-connector
可以看到版本不正确,只支持py2,不必安装了
pip安装:pip3 search mysql-connector
找到了,安装:pip3 install mysql-connector
但是:
报错了!
换种方式安装,下载下来自己手动安装:
wget https://dev.mysql.com/get/Downloads/Connector-Python/mysql-connector-python-2.1.5.tar.gz –no-check-certificate
如果没有安装wget工具先安装wget:yum install wget -y
下载下来后解压安装:
python3 setup.py install
安装成功,然后在运行爬虫:python3 spider.py
库文件问题已经变了
当然用pymysql更简单一些,用pip3可以直接安装成功
4.可以看到现在是缺少requests扩展,安装:
pip3 install requests
安装pyquery
pip3 install pyquery
安装Beautifulsoup:
pip3 install Beautifulsoup
报错了,寻找解决办法,进Beautifulsoup官网:
可以看到安装版本不正确:
pip3 install Beautifulsoup4
安装成功。
python3 spider.py 运行正常,能够爬取打印数据
5.添加定时任务:
crontab -e
输入:
/20 * * * python3 /project/python/spider.py
这个任务代表每20分钟以python3 运行/project/python/spider.py文件一次,规则如下:
保存退出,如果没有错误提示说明格式正确。
添加任务成功。
查看定时任务结果:
cat /var/log/cron
我这里爬到的打印结果,此时数据库也应该有数据了。