Python 3 Selenium NameError:name' basestring'没有定义

时间:2016-03-16 14:06:15

标签: python linux python-3.x selenium

几周前,我在Linux Mint(一个Ubuntu衍生版)计算机上安装了 Selenium ,并用它开发了一些Puthon报废脚本。 Everyhting工作正常。

现在,我正在尝试在另一台机器上复制安装,也是在Linux Mint下,我被卡住了。这就是我得到的:

Python 3.4.3 (default, Oct 14 2015, 20:28:29) 
[GCC 4.8.4] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from selenium import webdriver
>>> l_driver = webdriver.Firefox()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python3.4/dist-packages/selenium/webdriver/firefox/webdriver.py", line 62, in __init__
    firefox_options.binary_location = self.binary if isinstance(self.binary, basestring) else self.binary._get_firefox_start_cmd()
NameError: name 'basestring' is not defined

我完全按照以前的方式安装了Selenium:

sudo pip3 install -U Selenium

安装似乎没问题,也没有报告任何错误。以前,我使用apt命令安装了pip3:

sudo apt-get install python3-pip

也没有错误或问题。我用pip3安装了几个其他Python模块,它们都可以工作。

我的脚本都不会运行。它们都在我要打开Firefox WebDriver的第一行失败。然而,在我早期的机器上,一切仍然正常,我的所有脚本都像以前一样完美运行。

到底发生了什么事?我错过了什么?这是一个Python 2对3问题(&#39; basestring&#39;名称点那样)?

1 个答案:

答案 0 :(得分:3)

最新版本的硒(2.53.0)中的a bug