早上在linux下用selenium启动Chrome时出现问题:

早上在linux下用selenium启动Chrome时出现问题:
报错:

Traceback (most recent call last):
File "get2.py", line 62, in <module>
browser = webdriver.Chrome()
File "/root/.pyenv/versions/anaconda3-5.1.0/lib/python3.6/site-packages/selenium/webdriver/chrome/webdriver.py", line 75, in __init__
desired_capabilities=desired_capabilities)
File "/root/.pyenv/versions/anaconda3-5.1.0/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 154, in __init__
self.start_session(desired_capabilities, browser_profile)
File "/root/.pyenv/versions/anaconda3-5.1.0/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 243, in start_session
response = self.execute(Command.NEW_SESSION, parameters)
File "/root/.pyenv/versions/anaconda3-5.1.0/lib/python3.6/site-packages/selenium/webdriver/remote/webdriver.py", line 311, in execute
self.error_handler.check_response(response)
File "/root/.pyenv/versions/anaconda3-5.1.0/lib/python3.6/site-packages/selenium/webdriver/remote/errorhandler.py", line 237, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: unknown error: Chrome failed to start: exited abnormally
(unknown error: DevToolsActivePort file doesn‘t exist)
(The process started from chrome location /usr/bin/google-chrome is no longer running, so ChromeDriver is assuming that Chrome has crashed.)
(Driver info: chromedriver=2.43.600233 (523efee95e3d68b8719b3a1c83051aa63aa6b10d),platform=Linux 4.9.0-6-amd64 x86_64)

解决方案:
加上代码:

from selenium.webdriver.chrome.options import Options
chrome_options = Options()
chrome_options.add_argument(‘--no-sandbox‘)
chrome_options.add_argument(‘--disable-dev-shm-usage‘)
chrome_options.add_argument(‘--headless‘)
browser = webdriver.Chrome(chrome_options=chrome_options)

其中
“–no-sandbox”参数是让Chrome在root权限下跑
“–headless”参数是不用打开图形界面
可以额外加这些参数获得更好体验

chrome_options.add_argument(‘blink-settings=imagesEnabled=false‘)
chrome_options.add_argument(‘--disable-gpu‘)
---------------------
原文:https://blog.csdn.net/zhangpeterx/article/details/83502641

系统版本:

Red Hat 4.8.2-16

一、首先安装phantomjs

1)、下载程序文件

wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-1.9.7-linux-x86_64.tar.bz2

(注意:32位ubuntu下载链接是https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-1.9.7-linux-i686.tar.bz2)

2)、解压文件

tar -xvf phantomjs-1.9.7-linux-x86_64.tar.bz2

注意:有些可能还需要修改合适的地址和名字  改不改都行 不是必要因素。
二、配置环境变量

方法一:(全局环境变量)

vi  /etc/profile
                        加入以下内容:
                            export PATH=$PATH:/root/phantomjs/bin    (红色字体为安装目录)
                            PATH=$PATH:$HOME/bin
                            export PATH
                 这里要执行 source /etc/profile, 以另刚才的改动生效。

方法二:(用户环境变量)

vi  .bash_profile

在export PATH上添加以下内容:        
                              export PATH=/root/phantomjs/bin/phantomjs:$PATH  (红色字体为安装目录)

三、命令行输入

phantomjs --version 如果能看到版本说明OK了  (注意 是  - - version 中间没有空格)

如果报错如下::

selenium.common.exceptions.WebDriverException: Message: Service /Users/Me/.npm-packages/bin/phantomjs unexpectedly exited. Status code was: 127

安装依赖包fontconfig 命令如下:
yum --skip-broken install fontconfig freetype libfreetype.so.6 libfontconfig.so.1

原文地址:https://www.cnblogs.com/cly0205/p/10448531.html

时间: 2024-10-11 19:21:53

早上在linux下用selenium启动Chrome时出现问题:的相关文章

selenium启动Chrome时,加载用户配置文件

selenium启动Chrome时,加载用户配置文件 Selenium操作浏览器是不加载任何配置的,网上找了半天,关于Firefox加载配置的多点,Chrome资料很少,下面是关于加载Chrome配置的方法: 一.加载所有Chrome配置 用Chrome地址栏输入chrome://version/,查看自己的“个人资料路径”,然后在浏览器启动时,调用这个配置文件,代码如下: #coding=utf-8 from selenium import webdriver option = webdriv

Mac下用selenium启动Chrome浏览器问题解决

之前在mac的Python shell中,无法通过driver=webdriver.Chrome()启动谷歌浏览器.现解决方法如下: (前提:Chromedriver在/usr/local/bin/目录下) from selenium import webdriver browser = webdriver.Chrome(executable_path="/usr/local/bin/chromedriver") 或: from selenium import webdriver pa

oracle linux下oracle 10g启动EM、isqlplus及相关命令语法

转载:http://hancang2000.blog.sohu.com/139239421.html ORACLE_HOME/bin/emctl start dbconsole $ORACLE_HOME/bin/isqlplusctl start emctl常用命令语法: emctl start dbconsole启动EM console服务,使用前需要先设置ORACLE_SID环境变量 emctl stop dbconsole停止EM console服务,使用前需要先设置ORACLE_SID环

linux下通过命令启动多个终端执行相应的命令和程序

    作者:张昌昌 在一些情况下,往往需要同时启动多个终端并让终端执行自动执行相应的命令,进而达到提高操作效率的目的.在linux下gnome-terminal启动终端命令, gnome-terminal -x 后跟执行的命令,bash是linux启动子shell的命令,bash -c "所要执行的命令串",通过嵌套gnome-terminal -x bash -c ......,表示启动新终端, 并在新启动的终端里执行bash -c,即启动子shell,由子shell执行-c后面的

selenium启动chrome出错处理:Message: &#39;chromedriver&#39; executable needs to be in PATH

selenium启动chrome出错处理:Message: 'chromedriver' executable needs to be in PATH

linux下memcached的启动/结束的方式

当前项目中,linux下memcached的启动/结束的方式 默认情况下memcached安装到/usr/local/bin下. 进入安装目录,启动memcached:/usr/local/memcached/bin/memcached -d -c 10240 -m 1024 -u root 获取运行状态:echo stats | nc localhost 11211(可以查看出pid) 或使用ps -ef|grep memcached 停止memcached:kill -9 pid  (-9表

Linux 下Tomcat的启动、关闭、杀死进程

Linux下Tomcat的启动.关闭.杀死进程 打开终端 cd /java/tomcat #执行 bin/startup.sh #启动tomcat bin/shutdown.sh #停止tomcat tail -f logs/catalina.out #看tomcat的控制台输出: #看是否已经有tomcat在运行了 ps -ef |grep tomcat #如果有,用kill; kill -9 pid #pid 为相应的进程号 例如 pe -ef |grep tomcat 输出如下 sun 5

Linux下,Tomcat启动成功,发现ip:8080访问失败

Linux下,Tomcat启动成功,发现ip:8080访问失败 Chasel_H 2018.04.23 20:47* 字数 195 阅读 566评论 0喜欢 3 相信很多人都和我一样,在Linux环境下安装Tomcat并成功启动却没法通过ip:8080却没有访问成功,其实原因是因为Linux防火墙默认是关闭的. 若想成功访问,有两种方法:一是关闭防火墙,另外就是让防火墙开放这个端口. (1)关闭防火墙: 在终端执行  service iptables stop  命令 ,但我们不推荐使用此方式

linux下Eclipse进行C编程时动态链接库的生成和使用

引用 http://linux.chinaitlab.com/soft/864157.html 欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 一.创建动态链接库1.创建工程new->project->c++ project选择Shared Library->Empty Project.输入工程名a,点击finish,完成工程的创建. 2.编写代码在windows下封装动态链接库时对要封的函数要用__declspec(dllexport)来标明,在linux