selenium的安装、报错和解决

selenium安装的第一步就是用pip把模块下载回来。

第一步pip install

pip install selenium

具体报错信息如下:

File "/usr/local/lib/python2.7/dist-packages/selenium-3.0.0b2-py2.7.egg/selenium/webdriver/firefox/webdriver.py", line 65, in __init__
self.service.start()
File "/usr/local/lib/python2.7/dist-packages/selenium-3.0.0b2-py2.7.egg/selenium/webdriver/common/service.py", line 71, in start
os.path.basename(self.path), self.start_error_message)
selenium.common.exceptions.WebDriverException: Message: 'geckodriver' executable needs to be in PATH. 

Exception AttributeError: "'Service' object has no attribute 'process'" in <bound method Service.__del__ of <selenium.webdriver.firefox.service.Service object at 0x7f753ad53390>> ignored

#  发现报错信息包含: Message: 'geckodriver' executable needs to be in PATH

解决 :
是因为缺少依赖包geckodriver,所以在安装selenium之前,先把geckodriver安装上就能解决了。

Windows 系统

  1. 下载geckodriver.exe:

    下载地址:https://github.com/mozilla/geckodriver/releases

    请根据系统版本选择下载;(如Windows 64位系统)

  2. 下载解压后将getckodriver.exe复制到Firefox的安装目录下,如(C:\Program Files\Mozilla Firefox),并在环境变量Path中添加路径:C:\Program Files\Mozilla Firefox;
  3. 重启cmd后,再次运行代码即可

ubuntu16.04 系统

  1. 下载 geckodriverckod 地址:https://github.com/mozilla/geckodriver/releases
  2. 解压后将geckodriverckod 存放至 /usr/local/bin/ 路径下即可

Mac OS 系统:
如果你已经安装好了brew,那么输入如下两条命令即可

brew install geckodriver
brew link geckodriver

检验 geckodriver 是否安装成功:

# shell窗口下输入命令
geckodriver

# 什么都不输出,也不退出,说明安装成功
# 注意:windows 系统需要重启一个新cmd窗口在输命令

使用pip list查看已经安装的模块:

发现安装成功。

第二步Python运行Demo

from selenium import webdriver

browser = webdriver.Chrome()
browser.get('http://www.baidu.com/')

报错:

Traceback (most recent call last):
  File "D:\programfiles\Anaconda3\lib\site-packages\selenium\webdriver\common\service.py", line 76, in start
    stdin=PIPE)
  File "D:\programfiles\Anaconda3\lib\subprocess.py", line 756, in __init__
    restore_signals, start_new_session)
  File "D:\programfiles\Anaconda3\lib\subprocess.py", line 1155, in _execute_child
    startupinfo)
FileNotFoundError: [WinError 2] 系统找不到指定的文件。

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "D:/code/commany/python/APPScan/main.py", line 7, in <module>
    browser = webdriver.Chrome()
  File "D:\programfiles\Anaconda3\lib\site-packages\selenium\webdriver\chrome\webdriver.py", line 73, in __init__
    self.service.start()
  File "D:\programfiles\Anaconda3\lib\site-packages\selenium\webdriver\common\service.py", line 83, in start
    os.path.basename(self.path), self.start_error_message)
selenium.common.exceptions.WebDriverException: Message: 'chromedriver' executable needs to be in PATH. Please see https://sites.google.com/a/chromium.org/chromedriver/home

Process finished with exit code 1

没有安装chromedriver导致的,参考自己chrome浏览版本对应的chromedriver版本:
https://my.oschina.net/u/3367404/blog/3011400

chromedriver下载地址:
https://chromedriver.storage.googleapis.com/index.html

下载完成后,将ChromeDriver的可执行文件配置到环境变量下。

如果使用Windows,建议直接将chromedriver.exe文件拖到Python的Scripts目录下。

再次运行脚本,发现会新弹出一个新chrome:

原文地址:https://www.cnblogs.com/mysticbinary/p/11687618.html

时间: 2024-08-04 11:04:55

selenium的安装、报错和解决的相关文章

Linux---RPM安装报错以及解决方法

安装Samba服务器时候使用CD挂载安装的,结果遇到如下报错 not an rpm package (or package manifest):Input/output error                   //报错信息 解决方法:重新下载新的RPM安装包,原因是因为RPM包有损坏,多发生在挂在CD的情况下 下载RPM包地址 http://rpm.pbone.net/

分享MyEclipse安装及安装报错的解决方法

MyEclipse,虽然是一个耗大内存的IDE,但是还是比较适合初次接触J2EE新手轻松上手的工具.在这里,它的好处就不作说明了.但是,有时候我们第一次装了MyEclipse后又卸了然后重装会发现在装完最后一刻就会跳出悲剧的字符:error,........ 鉴于本人第二次重装成功,顾总结下解决的经验分享大家. 首先,要想重装软件成功,那么成功的必要条件是系统不存在该软件的余孽,也就是卸不干净就会导致重装不成功.有些使用者会很纳闷: 1.我明明点了MyEclipse的Uninstall,怎么会卸

编译安装mysql5.6.29及安装报错的解决方法

1.安装必要的库文件 yum install -y gcc* 2.yum安装camke yum install -y cmake 编译安装cmake cd /usr/local/src wget http://www.cmake.org/files/v2.8/cmake-2.8.7.tar.gz tar zxvf cmake-2.8.7.tar.gz cd cmake-2.8.7 ./configure make make install 3.安装 MYSQL cd /usr/local/src

WebEssentials 在vs2013 update5安装报错的解决方法.

WebEssentials 最高支持到update4 如果更新到了update5 RC, 则无法直接安装. 解决方法是 1,下载WebEssentials2013.vsix 文件. 2, 安装7zip 3,右击vsix文件,在7zip中打开. 4,编辑extension.vsixmanifest 修改 <InstallationTarget Id="Microsoft.VisualStudio.Pro" Version="12.0.40418" /> &

webpack——安装报错及解决办法

①先删除 删除全局webpack-cli webpack4.x开始官方文档是说要安装cli所以如果的在用4.+就需要卸载cli npm uninstall -g webpack-cli # 注释给我这种小白提供参考 # 卸载 uninstall 可以简写成 un # 全局 -g 的完整写法是 --global # 现在问题来了这样真的卸载了webpack-cli吗? # 答案是没有.到现在为止我还没有发现那个webpack-cli是全局安装的,至少官方文档没看到. # 那就看下面怎么删除局部we

20170514002Oracle 11g R2安装过程中遇到的报错及解决办法

Oracle 11g R2安装过程中遇到的报错及解决办法 1.提示Check if the DISPLAYvariable is set.    Failed<<<< 解决方案: #xhost +  //切换到root用户输入 #su – Oracle  //切换到oracle用户 $./runInstaller  //执行安装程序 xhost 是用来控制X server访问权限的. 通常当你从hostA登陆到hostB上运行hostB上的应用程序时, 做为应用程序来说,hostA

rlwrap安装报错You need the GNU readline 解决方法

首先大家肯定知道rlwrap是干什么的? 在linux以及unix中,sqlplus的上下左右.回退无法使用,会出现乱码情况.而rlwrap这个软件就是用来解决这个的. 这个错误曾经困扰我很久很久!下载readline 安装,安装好readline 还是无法运行rlwrap的安装程序 在网上搜寻很久才找到一个靠谱的解决方法 原来rlwrap这个程序的安装,需要依赖两个包, 一个是readline,这个readline在RHEL中已经集成了.不需要去专门下载 另外一个包 libtermcap-de

tomcat中安装JDK报错详细解决过程

在安装tomcat时解压安装JDK时出现如下报错:[[email protected] src]# wget 'http://download.oracle.com/otn-pub/java/jdk/8u65-b17/jdk-8u65-linux-i586.tar.gz'--2016-01-18 04:21:56--  http://download.oracle.com/otn-pub/java/jdk/8u65-b17/jdk-8u65-linux-i586.tar.gz正在解析主机 dow

Oracle 安装报错 [INS-06101] IP address of localhost could not be determined 解决方法

出现这种错误是因为主机名和/etc/hosts 文件不一致,只需要把主机名和其IP 写入/etc/hosts 文件,就ok了. 注意名字不能有下划线 修改network 文件之外,再使用hostname 命令指定一下主机名,就不用重启OS了. 1.     修改/etc/sysconfig/network 文件 [[email protected]~]# cat /etc/sysconfig/network NETWORKING=yes NETWORKING_IPV6=no HOSTNAME=s

解决SCCM 1606安装报错一例

解决SCCM 1606安装报错一例 这几天在公司测试SCCM 2016时遇到了如下错误: 博主在安装SCCM 2016时遇到了如下图所示的错误 错误提示:"在执行文件操作是,安装程序遇到错误,有关详细信息,请单击"查看日志"按钮": 打开日志显示如下内容: 错误原因如下: 因为安装SCCM时需要下载一些文件,楼主手欠将文件夹命名成带有中文字样的,如下图所示: 解决方法: 将安装SCCM时下载的文件名称命名为英文样式: 安装成功: