您的位置:首页 > 编程语言 > Python开发

mac配置python+selenium时遇到的相关问题

2017-03-30 18:02 656 查看
1.安装好pip+selenium+python之后

运行以下代码验证是否环境配置成功

from selenium import webdriver
import time
dr = webdriver.Firefox()
time.sleep(5)
print 'Browser will be closed'
dr.quit()
print 'Browser is close'


发现一个问题,报错

/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7 /Users/rita/PycharmProjects/one/selenium/test1.py
Traceback (most recent call last):
File "/Users/rita/PycharmProjects/one/selenium/test1.py", line 3, in <module>
dr = webdriver.Firefox()
File "/Library/Python/2.7/site-packages/selenium-3.3.1-py2.7.egg/selenium/webdriver/firefox/webdriver.py", line 145, in __init__
self.service.start()
File "/Library/Python/2.7/site-packages/selenium-3.3.1-py2.7.egg/selenium/webdriver/common/service.py", line 81, in start
os.path.basename(self.path), self.start_error_message)
selenium.common.exceptions.WebDriverException: Message: 'geckodriver' executable needs to be in PATH.

Process finished with exit code 1


解决方案:

发现是firefox版本过高,不能用默认路径,需要提供的geckodriver完整路径,我重新下载了一个,下载地址:https://github.com/mozilla/geckodriver/releases 

方法<一>:

下载完成之后在代码中录入geckodriver的绝对路径,代码如下:

from selenium import webdriver
import time
dr = webdriver.Firefox(executable_path= '/Users/rita/Downloads/geckodriver')
time.sleep(5)
print 'Browser will be closed'
dr.quit()
print 'Browser is close'


编译执行能够看到firefox浏览器启动,完成之后输出如下:代表环境配置成功

/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7 /Users/rita/PycharmProjects/one/selenium/test1.py
Browser will be closed
Browser is close

Process finished with exit code 0


方法<二>:

geckodriver放到/usr/local/bin下即可,运行程序中不加绝对路径也能运行成功

运行以下代码成功

from selenium import webdrive
4000
r
import time
dr = webdriver.Firefox()
time.sleep(5)
print 'Browser will be closed'
dr.quit()
print 'Browser is close'

其他相关可参照:http://blog.csdn.net/kacylining/article/details/60587484
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  selenium mac python