scrapy-redis+selenium+webdriver 部署到linux上
背景:在使用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上的更多相关文章
- Redis介绍及部署在CentOS7上(一)
0.Redis目录结构 1)Redis介绍及部署在CentOS7上(一) 2)Redis指令与数据结构(二) 3)Redis客户端连接以及持久化数据(三) 4)Redis高可用之主从复制实践(四) 5 ...
- 把Asp.Net Core 2.0部署在Linux上,使用Nginx代理服务器,并且用Systemctl命令以服务的方式监听项目
在Linux上部署.net core 2.0程序: 第一步:配置Nginx代理 在/etc/nginx/sites-available/default 中添加 server { listen ; lo ...
- java项目部署在linux上
在将java项目在linux上之前我们需要准备一下,首先是 一个打成war包的java项目,一个contes的系统,还有就是tomcat和jdkl的压缩包,可以在官网下载, jdk安装 先卸载cent ...
- jenkins自动化部署项目8 -- 新建job(服务代码部署在linux上)
jenkins(windows) ----> 应用服务器(linux): 1.后台java服务: 与部署在windows上不同的是,这里我选择了在[构建后操作]中使用ssh向远程linux服务器 ...
- go交叉编译,部署到linux上出现cannot execute binray file的解决方案
写在前面: 了解过常见的项目部署方式后,打算先从最简单的方式开始.没想到踩了大坑.先说下整个部署的过程. 博主是在window上生成linux上的可执行文件.. 具体过程: 1.首先按照网上说的 ...
- 使用SpringCloud实现的微服务软件开发部署到Linux上占用内存过大问题解决办法
问题描述 最近上线的一个使用JAVA的Spring Cloud开发的ERP软件,部署上线时发现很严重的内存资源占用过高问题,而实际上开发测试并没有很大的访问量,甚至却出现了服务器无法正常访问的现象. ...
- 项目部署到Linux上遇到的坑
作者:晨钟暮鼓c个人微信公众号:程序猿的月光宝盒 1.本地Navicat for MySQL无法连接至服务器(Centos 7 x86_64 bbr) 1045错误: 解决步骤: 1.查看用户名密 ...
- 关于asp.net利用mono部署到Linux上的一些说明
linuxdot.net社区群:102732979(如果你认为你已经在.NET跨平台方面有足够的经验,请参加这个群:103810355). 其中有各种大神,嘿嘿,如果你有问题可以来咨询,完全无偿的免费 ...
- redis(十六):Redis 安装,部署(LINUX环境下)
第一步:下载安装包 访问https://redis.io/download 到官网进行下载.这里下载最新的4.0版本. 第二步:安装 1.通过远程管理工具,将压缩包拷贝到Linux服务器中,执行解压 ...
随机推荐
- 基于Python在MacOS上安装robotframework-ride
基于Python在MacOS上安装robotframework-ride https://www.jb51.net/article/153665.htm https://www.jianshu.com ...
- 什么是设计模式?【php】
原文地址:https://www.cnblogs.com/zhuiluoyu/p/5818974.html 什么是设计模式? 设计模式(Design Pattern)是一套被反复使用.多数人知晓的.经 ...
- Mysql-数据的完整性约束
一 .介绍 二 .not null与default 三 .unique 四 .primary key 五 .auto_increment 六 .foreign key 一 .介绍 约束条件与数据类型的 ...
- php (zip)文件下载设置
普通下载头大概意思,文件输出的地方二选一,小文件下载.如文件较大时注意执行时间与内存使用.可以看php大文件下载 $filename = $_GET['filename']; $pathname = ...
- Python-type函数使用
- Golddata如何采集需要登录/会话的数据?
概要 本文将介绍使用GoldData半自动登录功能,来采集需要登录网站的数据.GoldData半自动登录功能,就是指通过脚本来执行登录,如果需要验证码或者其它内容需要人工输入时,可以通过收发邮件来执行 ...
- Spark SQL join的三种实现方式
引言 join是SQL中的常用操作,良好的表结构能够将数据分散到不同的表中,使其符合某种规范(mysql三大范式),可以最大程度的减少数据冗余,更新容错等,而建立表和表之间关系的最佳方式就是join操 ...
- 分布式日志收集框架Flume
分布式日志收集框架Flume 1.业务现状分析 WebServer/ApplicationServer分散在各个机器上 想在大数据平台Hadoop进行统计分析 日志如何收集到Hadoop平台上 解决方 ...
- C#中的抽象方法,虚方法,接口之间的对比
1.首先来看一看抽象类 抽象类是特殊的类,不能够被实例化:具有类的其他特性:抽象方法只能声明于抽象类中,且不包含任何实现 (就是不能有方法体),派生类也就是子类必须对其进行重写.另外,抽象类可以派生自 ...
- kaggle之数据分析从业者用户画像分析
数据为kaggle社区发布的数据分析从业者问卷调查分析报告,其中涵盖了关于该行业不同维度的问题及调查结果.本文的目的为提取有用的数据,进行描述性展示.帮助新从业的人员更全方位地了解这个行业. 参考学习 ...