部署一个Python爬虫环境(五)-ubuntu版_实际系统篇-失败

由于(二)中我们做了好多操作,所以我把系统还原到(二)操作前的状态,然后才进行了下面的处理

一,部署环境及安装包

系统:Ubuntu 14.04.4 LTS

1.系统自带的python或python3.7

2.Python安装 包安装和管理工具pip

3.pip安装 代理/抓包工具Mitmproxy

4.pip安装 传输和存储数据工具protobuf

二,操作:

查看软件版本

root@Server:~# python3 --version
Python 3.4.3
root@Server:~# pip --version
程序“pip”尚未安装。 您可以使用以下命令安装:
apt-get install python-pip
root@Server:~# mitmproxy --version
程序“mitmproxy”尚未安装。 您可以使用以下命令安装:
apt-get install mitmproxy

1.Python3.4.3

1)安装pip

sudo apt update
#出现一些错误:
错误 http:
//www.remastersys.com oneiric/main amd64 Packages 404 Not Found 错误 http://www.remastersys.com oneiric/main i386 Packages 404 Not Found 忽略 http://www.remastersys.com oneiric/main Translation-zh_CN 忽略 http://www.remastersys.com oneiric/main Translation-zh 忽略 http://www.remastersys.com oneiric/main Translation-en 错误 http://www.remastersys.com precise/main amd64 Packages 404 Not Found 错误 http://www.remastersys.com precise/main i386 Packages 404 Not Found 忽略 http://www.remastersys.com precise/main Translation-zh_CN 忽略 http://www.remastersys.com precise/main Translation-zh 忽略 http://www.remastersys.com precise/main Translation-en 下载 15.6 MB,耗时 32秒 (473 kB/s) W: 无法下载 http://www.remastersys.com/ubuntu/dists/oneiric/main/binary-amd64/Pa ckages 404 Not Found W: 无法下载 http://www.remastersys.com/ubuntu/dists/oneiric/main/binary-i386/Pac kages 404 Not Found W: 无法下载 http://www.remastersys.com/ubuntu/dists/precise/main/binary-amd64/Pa ckages 404 Not Found W: 无法下载 http://www.remastersys.com/ubuntu/dists/precise/main/binary-i386/Pac kages 404 Not Found E: Some index files failed to download. They have been ignored, or old ones used instead.

  先不管,接着装pip

sudo apt install python3-pip
提示:
  W: 您可能需要运行 apt-get update 来解决这些问题
  E: Sub-process /usr/bin/dpkg returned an error code (1)

  这里必须要解决一下了,它的意思就是说”你的dpkg源失效了“;源文件地址是: /etc/apt/sources.list。

  首先,我把(四)中系统的源文件拷过来,发现不能解决问题。

  我查了下是因为系统版本不同源也不同。

  我参照:https://www.cnblogs.com/dtiove/p/5917263.html

  把阿里14.04源替换到源文件里

deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse

重新执行

sudo apt update
python3 --version  # 看下它的版本有没有变
sudo apt install python3-pip

   结果:

root@Server:~# pip3 --version
pip 1.5.4 from /usr/lib/python3/dist-packages (python 3.4)

  这里安装pip是成功的。

  现在想来,python3xb中遇到的问题二,解决过程出现了源失效的问题,虽然更换过源,但是在哪个环节换的,换成了什么我忘记了。

  这里pip是1.5.4,我们在(二)中知道”pip8.1.1的简易版“安装Mitmproxy”时有问题,是简易版的问题还是8.1.1以前的版本装Mitmproxy有问题呢(我觉得是简易版或系统里缺少一些包的事),下面我们做下验证(如果失败,我会采取安装python3.7的路子)

2)安装Mitmproxy

pip3 install mitmproxy

结果

。。。
Command python setup.py egg_info failed with error code 1 in /tmp/pip_build_root/cryptography Storing debug log for failure in /root/.pip/pip.log

对策

sudo python3 -m pip install --upgrade --force pip  #python3 换成自己的版本
sudo pip3 install setuptools==9.0.1  #9.0.1是(三)中用的版本

  这里执行第一条时,报错

root@Server:~# sudo python3 -m pip install --upgrade --force pip
Downloading/unpacking pip
  Downloading pip-21.0.1-py3-none-any.whl (1.5MB): 1.5MB downloaded
Installing collected packages: pip
  Found existing installation: pip 1.5.4
    Not uninstalling pip at /usr/lib/python3/dist-packages, owned by OS
*** Error compiling '/tmp/pip_build_root/pip/pip/_internal/cli/base_command.py'...
  File "/tmp/pip_build_root/pip/pip/_internal/cli/base_command.py", line 57
    'prog': f'{get_prog()} {name}',

  麻烦又回到(二)了,卸载pip3-重安装下-升级pip3,命令如下:

sudo apt-get remove python3-pip
sudo apt-get install python3-pip
sudo pip3 install --upgrade pi

  还是不行。卸载pip3,命令为上面第一个行。

  好吧,8.1.1及以前的版本装Mitmproxy可能有问题,或是系统里一些包的问题。

 

2.Python3.7

1)安装Python3.7

apt-get install python3.7

  我们直接使用上面的命令是不能安装的,因为源库里没有python3.7的包

 然后我找到了一个Ubuntu14.04 安装 Python3.6的教程-

https://blog.csdn.net/sinat_37026077/article/details/86628493 与 https://blog.csdn.net/th_num/article/details/82804392

可以探索安装3.7,这里我们先按照教程安装下3.6吧

 安装Python3.6(PPA包管理工具)

# 安装 ppa包管理工具-这个我第二个没安装,看情况吧
sudo apt-get install --reinstall ca-certificates
sudo apt-get install python-software-properties
sudo apt-get install software-properties-common

#添加ppa源-两个源
sudo add-apt-repository ppa:jonathonf/python-3.6
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt update
#安装
sudo apt install python3.6 python3.6-dev -y

#sudo apt update时就可以看到在下载python3.6的文件,记得做上面处理前一定要确保本页的源在源文件里(不用一个一个对,替换掉里面的阿里源就好了)。

  效果如下

root@Server:~# python3.6 --version
Python 3.6.8

  这个比(二)中的wget方法简易

2)安装pip

sudo apt install python3.6-pip

wget https://bootstrap.pypa.io/3.5/get-pip.py
python3.6 get-pip.py

错误:AttributeError: module 'importlib._bootstrap' has no attribute 'SourceFileLoader'

python3 -m ensurepip --upgrade  #python会重新安装setuptools工具包

不能解决

不搞了,要不要再搭个服务器呢,(四)中的那个版本!

  方案一:搭建(四)中的服务器

  方案二:试着升级现有的服务器

 

部署一个Python爬虫环境(六)-ubuntu版_升级现有服务器系统篇

 

365个夜晚,我希望做到两天更一篇博客。加油,小白!
原文地址:https://www.cnblogs.com/qq2806933146xiaobai/p/14373123.html