背景:在使用selenium时,在本地使用windows,都会有一个图形界面,但是到了生产环境linux上没有了图形界面怎么部署呢?

解决方案:

1.安装图形化界面,不推荐,因为安装图形化界面会占用很多内存,而且在linux上搞个图形界面,很不爽

2.使用虚拟化图形界面,就跟你的虚拟机一样,也是一套系统,不过不会弹出个界面,推荐使用

系统配置:

redis 3.1.0

requests 2.21.0

Scrapy 1.6.0

scrapy-redis 0.6.8

scrapyd 1.2.0

scrapyd-client 1.1.0

linux:CentOS Linux release 7.6.1810 (Core)

firefox:Mozilla Firefox 65.0.1

selenium: 3.141.0

pyvirtualdisplay:  0.2.1

geckodriver.exe: 0.23

xvfb:xorg-x11-server-Xvfb-1.20.1-5.2.el7_6.x86_64

解释:

1.查看linux系统版本命令:cat /etc/redhat-release

2.安装xvfb: yum install xorg-x11-server-Xvfb  gtk3

3.安装geckodriver:下载地址

  I.制作软链接: ln -s /usr/bin/geckodriver /你的geckodriver目录

4.linux上安装firefox:下载地址

  I.查看linux系统版本:linux命令行输入: getconf LONG_BIT,如果是64为就下载64位的firefox

  II.上传到linux,解压:tar -xjf Firefox-latest-x86_64.tar.bz2

  III.进入firefox目录,命令行输入firefox,出现Error: GDK_BACKEND does not match available displays,说明安装成功

  IV:制作软链接,ln -s /usr/bin/firefox  /你的火狐目录/firefox

5.安装pyvirtualdisplay:pip3 install pyvirtualdisplay  (我是用的是python3,这是做的软链接是pip3)

----------------------------------------------------------菇凉滑溜溜的马甲线----------------------------------------------------------

插播一条新闻:今天看到一则消息,博客园技术大佬vamei因为抑郁症去世,之前看过他的很多博客,简洁幽默,令我心向往之,在此纪念,生而为人,当简单快乐,其他的都要排在第二位

scrapy-redis+selenium+webdriver 部署到linux上的更多相关文章

  1. Redis介绍及部署在CentOS7上(一)

    0.Redis目录结构 1)Redis介绍及部署在CentOS7上(一) 2)Redis指令与数据结构(二) 3)Redis客户端连接以及持久化数据(三) 4)Redis高可用之主从复制实践(四) 5 ...

  2. 把Asp.Net Core 2.0部署在Linux上,使用Nginx代理服务器,并且用Systemctl命令以服务的方式监听项目

    在Linux上部署.net core 2.0程序: 第一步:配置Nginx代理 在/etc/nginx/sites-available/default 中添加 server { listen ; lo ...

  3. java项目部署在linux上

    在将java项目在linux上之前我们需要准备一下,首先是 一个打成war包的java项目,一个contes的系统,还有就是tomcat和jdkl的压缩包,可以在官网下载, jdk安装 先卸载cent ...

  4. jenkins自动化部署项目8 -- 新建job(服务代码部署在linux上)

    jenkins(windows) ----> 应用服务器(linux): 1.后台java服务: 与部署在windows上不同的是,这里我选择了在[构建后操作]中使用ssh向远程linux服务器 ...

  5. go交叉编译,部署到linux上出现cannot execute binray file的解决方案

    写在前面: 了解过常见的项目部署方式后,打算先从最简单的方式开始.没想到踩了大坑.先说下整个部署的过程.    博主是在window上生成linux上的可执行文件.. 具体过程: 1.首先按照网上说的 ...

  6. 使用SpringCloud实现的微服务软件开发部署到Linux上占用内存过大问题解决办法

    问题描述 最近上线的一个使用JAVA的Spring Cloud开发的ERP软件,部署上线时发现很严重的内存资源占用过高问题,而实际上开发测试并没有很大的访问量,甚至却出现了服务器无法正常访问的现象. ...

  7. 项目部署到Linux上遇到的坑

    作者:晨钟暮鼓c个人微信公众号:程序猿的月光宝盒 1.本地Navicat for MySQL无法连接至服务器(Centos 7 x86_64 bbr) 1045错误: 解决步骤: ​ 1.查看用户名密 ...

  8. 关于asp.net利用mono部署到Linux上的一些说明

    linuxdot.net社区群:102732979(如果你认为你已经在.NET跨平台方面有足够的经验,请参加这个群:103810355). 其中有各种大神,嘿嘿,如果你有问题可以来咨询,完全无偿的免费 ...

  9. redis(十六):Redis 安装,部署(LINUX环境下)

    第一步:下载安装包 访问https://redis.io/download  到官网进行下载.这里下载最新的4.0版本. 第二步:安装 1.通过远程管理工具,将压缩包拷贝到Linux服务器中,执行解压 ...

随机推荐

  1. 基于Python在MacOS上安装robotframework-ride

    基于Python在MacOS上安装robotframework-ride https://www.jb51.net/article/153665.htm https://www.jianshu.com ...

  2. 什么是设计模式?【php】

    原文地址:https://www.cnblogs.com/zhuiluoyu/p/5818974.html 什么是设计模式? 设计模式(Design Pattern)是一套被反复使用.多数人知晓的.经 ...

  3. Mysql-数据的完整性约束

    一 .介绍 二 .not null与default 三 .unique 四 .primary key 五 .auto_increment 六 .foreign key 一 .介绍 约束条件与数据类型的 ...

  4. php (zip)文件下载设置

    普通下载头大概意思,文件输出的地方二选一,小文件下载.如文件较大时注意执行时间与内存使用.可以看php大文件下载 $filename = $_GET['filename']; $pathname = ...

  5. Python-type函数使用

  6. Golddata如何采集需要登录/会话的数据?

    概要 本文将介绍使用GoldData半自动登录功能,来采集需要登录网站的数据.GoldData半自动登录功能,就是指通过脚本来执行登录,如果需要验证码或者其它内容需要人工输入时,可以通过收发邮件来执行 ...

  7. Spark SQL join的三种实现方式

    引言 join是SQL中的常用操作,良好的表结构能够将数据分散到不同的表中,使其符合某种规范(mysql三大范式),可以最大程度的减少数据冗余,更新容错等,而建立表和表之间关系的最佳方式就是join操 ...

  8. 分布式日志收集框架Flume

    分布式日志收集框架Flume 1.业务现状分析 WebServer/ApplicationServer分散在各个机器上 想在大数据平台Hadoop进行统计分析 日志如何收集到Hadoop平台上 解决方 ...

  9. C#中的抽象方法,虚方法,接口之间的对比

    1.首先来看一看抽象类 抽象类是特殊的类,不能够被实例化:具有类的其他特性:抽象方法只能声明于抽象类中,且不包含任何实现 (就是不能有方法体),派生类也就是子类必须对其进行重写.另外,抽象类可以派生自 ...

  10. kaggle之数据分析从业者用户画像分析

    数据为kaggle社区发布的数据分析从业者问卷调查分析报告,其中涵盖了关于该行业不同维度的问题及调查结果.本文的目的为提取有用的数据,进行描述性展示.帮助新从业的人员更全方位地了解这个行业. 参考学习 ...