Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为什么selenium不能在我的mac上正常工作?_Python_Firefox_Selenium Webdriver - Fatal编程技术网

Python 为什么selenium不能在我的mac上正常工作?

Python 为什么selenium不能在我的mac上正常工作?,python,firefox,selenium-webdriver,Python,Firefox,Selenium Webdriver,我在mac上使用Python3和selenium 2.53.6,它确实会打开firefox,但不会打开我指定的页面。我试图打开“inventwithpython.com”,但我的程序所做的只是启动firefox并返回此错误 下面是我的代码: from selenium import webdriver driver = webdriver.Firefox() driver.get('http://inventwithpython.com') 我还发现了以下错误: 文件 “/Library/Fr

我在mac上使用Python3和selenium 2.53.6,它确实会打开firefox,但不会打开我指定的页面。我试图打开“inventwithpython.com”,但我的程序所做的只是启动firefox并返回此错误

下面是我的代码:

from selenium import webdriver
driver = webdriver.Firefox()
driver.get('http://inventwithpython.com')
我还发现了以下错误:

文件 “/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site packages/selenium/webdriver/firefox/firefox_binary.py”, 第108行,输入等待,直到可连接 %(self.profile.path))selenium.common.exceptions.WebDriverException:消息:无法加载 轮廓个人资料目录: /var/folders/4c/gsw7v5b118j406zxj3lxctt40000gn/T/tmpv963_mt0 在FirefoxBinary构造函数中指定了日志文件,请检查其 细节


你能试试这个吗?让我知道发生了什么

#!/your/shebang/line/python3

from selenium import webdriver
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary

binary = FirefoxBinary('/your/path/to/actual/firefox/binary')
driver = webdriver.Firefox(firefox_binary=binary)
driver.get('http://inventwithpython.com')
确保二进制文件的路径是您正常触摸Firefox时启动的实际路径

编辑:

哦,在我忘记之前,确保你也这样做。只是想确定一下

pip install -U selenium

因为如果我没记错的话,前一段时间有一个关于个人资料的补丁。因此,让我们确保这不是问题。

您没有使用最新版本的:firefox、selenium、geckodriver。升级这些,您的代码将按原样工作。这根本不能回答OP的问题。OP声明它正在启动Firefox。。。很明显,找到二进制位置很好。虽然你可能是对的,但这里的想法是测试他的环境是否与我所想的相同。因为他可以启动firefox,但如果无法加载配置文件,则可能是错误的配置文件。selenium尝试从系统中获取正确的二进制文件。但这并不总是正确的。指定他日常生活中使用的二进制可能会帮助事情顺利进行。如果没有,那么它就消除了大量其他问题并缩小了可能性。StackOverflow不是交互式调试器。在评论中澄清问题和建议是可以接受的。。。但是答案应该是答案,而不是模糊的调试提示。好吧,我以后会尝试将这些分开