博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python-selenium-firefox环境搭建时常遇到的小问题
阅读量:5843 次
发布时间:2019-06-18

本文共 2668 字,大约阅读时间需要 8 分钟。

 以下问题很多人都经常遇到,而且很多都能百度到解决方法,此处是为了自己方便,在使用之后确定可用的结果做了记录

报错一:

 

 

Traceback (most recent call last):

  File "D:/Exercise/baidu.py", line 5, in <module>

    browser =webdriver.Firefox()

  File "D:\Python27\lib\site-packages\selenium\webdriver\firefox\webdriver.py", line 140, in __init__

    self.service.start()

  File "D:\Python27\lib\site-packages\selenium\webdriver\common\service.py", line 81, in start

    os.path.basename(self.path), self.start_error_message)

WebDriverException: Message: 'geckodriver' executable needs to be in PATH.

解决:

1)此处需要安装Firefox geckodriver

  • 下载地址:
  • 解压缩:该软件无需安装,解压缩即可,比如解压缩到路径: D:/browser_drivers/
  • 设置环境变量:需将上一步的解压缩路径添加的Windows环境变量中

2)添加Firefox可执行程序到系统环境变量

 

 

 报错二:

 

 

解决:火狐版本不兼容(不一定是高了还是低了,我目前使用的45版本)

 

报错三:

 

火狐版本问题

 

报错四:

 

用了方法1之后因为出现问题三然后卸载,默认安装路径重装了火狐47、python2.7.9和selenium等等,结果出现问题四

方法1:这里如果你的火狐浏览器安装不是默认路径,需要修改Python的两个文件配置:

配置文件地址: D:\Programs\Python\Python35-32\Lib\site-packages\selenium\webdriver\firefox的

①    webdriver.py文件“def__init__(self,firefox_profile=None,firefox_binary=None”,修改为

def_init_(self,firefox_profile=None,firefox_binary=FirefoxBinary(""C:/Program Files (x86)/Mozilla Firefox/firefox.exe"")

②    Firefox_binary.py文件

“def __init__(self, firefox_path=None, log_file=None):”修改为

def_init_(self,firefox_path=""C:/Program Files (x86)/Mozilla Firefox/firefox.exe"",log_file=None);

 

方法2:执行文件中browser = webdriver.Firefox(executable_path="C:\Python27\geckodriver.exe")

 

 

报错五:

  

Traceback (most recent call last):

  File "D:\Exercise\baidu.py", line 5, in <module>

    browser =webdriver.Ie()

  File "D:\Python27\lib\site-packages\selenium\webdriver\ie\webdriver.py", line 57, in __init__

    desired_capabilities=capabilities)

  File "D:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 92, in __init__

    self.start_session(desired_capabilities, browser_profile)

  File "D:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 179, in start_session

    response = self.execute(Command.NEW_SESSION, capabilities)

  File "D:\Python27\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 236, in execute

    self.error_handler.check_response(response)

  File "D:\Python27\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 192, in check_response

    raise exception_class(message, screen, stacktrace)

WebDriverException: Message: Unexpected error launching Internet Explorer. Protected Mode settings are not the same for all zones. Enable Protected Mode must be set to the same value (enabled or disabled) for all zones.

 

解决:

 

把Internet选项-安全里的保护模式都去掉或者都选上

 

如果是公司内网使用代理上网,RF无法识别IE的配置需要使用proxy.pac脚本实现代理上网

 

配置方法 IE》工具》Internet选项》连接》局域网设置

 

勾选使用自动配置脚本 file://c:/proxy.pac ------脚本存放路径 注意斜杠

转载于:https://www.cnblogs.com/Jindy-mine/p/6430000.html

你可能感兴趣的文章
MySQL 不落地迁移、导入 PostgreSQL - 推荐 rds_dbsync
查看>>
二叉树的蛇形遍历 leetcode 103
查看>>
Linux设备驱动之IIO子系统——IIO框架及IIO数据结构
查看>>
【Util】 时间天数增加,时间比较。
查看>>
[Erlang 0004] Centos 源代码编译 安装 Erlang
查看>>
51 Nod 1027 大数乘法【Java大数乱搞】
查看>>
20.4. myisamchk — MyISAM Table-Maintenance Utility
查看>>
三维重建技术概述
查看>>
Go语言与数据库开发:01-09
查看>>
Python连续攀升,其他的脚本语言去哪了?
查看>>
socket跟TCP/IP 的关系,单台服务器上的并发TCP连接数可以有多少
查看>>
中文分词之HMM模型详解
查看>>
山东青岛市南区:创建"物联网" 信息化管理涉案财物
查看>>
《爆发》作者:大数据领域将有新赢家
查看>>
AI x 量化:华尔街老司机解密智能投资正确姿势
查看>>
IT史上十大收购案
查看>>
数据切分——Atlas介绍
查看>>
云计算时代,互联网金融背后的想象空间
查看>>
游戏引擎cocos2d-android使用大全
查看>>
oracle job 定时执行参数
查看>>