Centos6下scrapy模块安装
在centos6上安装scrapy,折腾了一会...
当我尝试 pip install scrapy
的时候,发现Twisted包安装不了,报错信息:
Could not find the version ...
然后手动安装Twisted吧,
到官网下载Twisted包:Twisted-16.3.0.tar.bz2, 执行下面命令安装:
tar -xjvf Twisted-16.3.0.tar.bz2
cd Twisted-15.2.1
python setup.py install
然后还需要一些系统包依赖,然后还需要python包:cryptography ...
得到安装好了,居然说我python没有sqlite3模块?
- 解决:我安装包:
sudo yum install sqlite-devel
然后需要重新编译python, 好了编译好了,还是没有sqlite3模块,试了几次,什么原因呢?
- 解决:原来是链接要旧的链接删除了,然后重新创建软链接
重新编译python后导致之前的pip, virtualenv不能使用,需要重新安装pip,virtualenv
- 解决:
python get-pip.py
,下载get-pip.py文件安装
另外一个问题:跑起来的时候,文件写入mysql报编码错误:
解决:在
/etc/my.cnf
配置文件设置:[client] 中添加 default-character-set=utf8
[mysqld] 中添加 default-character-set=utf8 和 init_connect=SET NAMES 'utf8'
首先这个mf.cnf文件最好是在目录
/usr/share/mysql
里面4个配置文件(mysql-huge.cnf, mysql-medium.cnf, mysql-small.cnf, mysql-large.cnf)的例子拷贝过去若不拷贝到此目录下则重启Mysql后编码方式又回到默认方式
最后就是重启,记得是重启,一般修改配置文件,mysqld服务就stop,你如果start之后是没有效果的,必须要start之后,来一个restart,(坑啊)
pre>service mysqld start service mysqld start
code>
下面是依赖的系统包:
sudo yum install libxlst, libxml2, xslt-config, libffi, libffi-devel, python-devel, openssl-devel
code>
pre>
如果yum安装不了,可能就需要下载包,然后源码安装了:
./configure -> make -> make install
下面是依赖的python包:
pip install Twisted, cryptography
一般会自动安装依赖,不然就需要源码编译安装了:
解压 -> python setup.py build -> python setup.py install