linux 服务器 搭建 Python3.7+Selenium+Firefox无头

1.1 搭建 Python3.7


本 文章 选择拿 阿里云 服务器 CentOS 7.6 操作系统 实战举例
折腾了 大概 一整天,我发现 基本上 所有的 安装 python 3 的 就 3.7 最稳定。不过呢,我尝试了 很多 安装 3.7 的 文章 都以失败而告终,他们写的 不是 不好。而是 总 缺点少点的 就是 本来 差不多了,而且 就差 那 几步了,然而 文章 就到那里了。导致 你会出现 各种 bug 各种错误。我的天 !!! 两个字 闹挺

  1. 安装依赖,我被这个依赖,坑了 将近 一个多小时。
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make

在这里插入图片描述

  1. 更换 wegt 源 为 阿里源
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

清除缓存

yum clean all

生成缓存

yum makecache

更新最新源设置

yum update -y

这一步 基本 不会 出问题。。 如果 出问题 我实在 没办法。就是 更换个 源,提高一下 下载速度。这个 我觉得 真的 不会出啥问题。如果 卡住了,那么 恭喜你,我在 进行最后一步的时候 也卡住了。没办法,等着吧。千万别着急!!!

  1. 利用 wegt 下载 python3.7
wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz

如果 更新完 源下载的 还是很慢,那你就 上 官方 把 python3.7 下载下来,然后 传到 你的 服务器里。都是一样的。我这样 用 wget 只是 为了装逼。

你看下面的图:我也是 直接把这个 包 上传到 服务器的。

在这里插入图片描述

  1. 解压 这个 tar 包
tar -zxvf Python-3.7.0.tgz
  1. 进入 解压后的 目录,我们 选择 默认安装即可。默认安装 会 把它 安装在 /usr/local/bin 下面。
cd Python-3.7.0
./configure
make&&make install

在这里插入图片描述

如果 报错 “ModuleNotFound:No module named '_ctypes'”

则输入 yum install libffi-devel -y 然后再输入 make&&make install 进行安装。

在这里插入图片描述

  1. 为了方便,我们 可以进行 软连接,让 默认的 python 和 pip 指向 刚安装的 python3 和 pip3
mv /usr/bin/python /usr/bin/python.bak
ln -s /usr/local/bin/python3 /usr/bin/python

mv /usr/bin/pip /usr/bin/pip.bak
ln -s /usr/local/bin/pip3 /usr/bin/pip
  1. 再次 配置 yum <由于 你设置了软连接,那么 默认的 python 就不是 2.7了,但是 yum 是 2.7 支持的。所以必须 要 明确的指出 2.7 这个版本>
vi /usr/libexec/urlgrabber-ext-down
vi /usr/bin/yum
vi /usr/bin/yum-config-manager

分别 修改 上述 三个 文件里面的内容。如下图所示,我们只要在 python 的后面 加 2.7 这个字符串就行了。

如果没有 /usr/bin/yum-config-manager 那我们 可以自己写一个。或者 说 我们可以 不管它。

  1. 必须要 更新!更新!pip!
pip install --upgrade pip

在这里插入图片描述
在这里插入图片描述


2.1 直接 pip install selenium

pip install selenium

在这里插入图片描述


3.1 Firefox 无头

  1. 我建议大家 都在 自己本机上 先下载 好 火狐 和 geckodriver 驱动 然后 上传到 服务器。

大家可以随便选一个。我这里 就直接 选的 89.0 版本的。

geckodriver 这个最好选个最新版本的

在这里插入图片描述
2. 直接 解压 就行了。

tar -jxvf Firefox-latest-x86_64.tar.bz2 
tar -zxvf geckodriver-v0.30.0-linux64.tar.gz 

在这里插入图片描述
在这里插入图片描述

  1. 必须要先安装 yum install gtk3 并 运行 yum info gtk3 否则 可能 这个浏览器 运行 不起来,还做个 屁的 自动化测试。。
yum install gtk3
yum info gtk3

在这里插入图片描述

  1. 删除 旧版本的 firefox
cd /usr/lib
ls | grep f*
rm -rf firefox-esr
rm -rf /usr/bin/firefox

如果没有 旧版本的 火狐的话,就别删了。。多此一举。

  1. 直接 把解压的 火狐 移动 到 /usr/lib
mv firefox/ /usr/lib
  1. 创建一个 新的 命令
ln -s /usr/lib/firefox/firefox /usr/bin/firefox
  1. 给驱动加执行权限,这个 tm 的 坑了我大概 四个小时左右
chmod +x geckodriver

没权限,当然 Selenium 无效呀。。

  1. 把驱动直接 移动到 /usr/bin 即可,就可以 不用做任何 配置了
mv geckodriver /usr/bin/

4.1 编写 Selenium.py 脚本

from selenium import webdriver

# 下面参数尽量不要动,否则会出错

options = webdriver.FirefoxOptions()
options.add_argument('--no-sandbox')
options.add_argument('--disable-dev-shm-usage')
options.add_argument('--headless')
browser = webdriver.Firefox(options=options)
#上面参数尽量不要动,否则会出错


browser.get('https://www.baidu.com')

print(browser.title)

在这里插入图片描述
在这里插入图片描述
成功!成功!成功! 完结撒花!

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值