2016-09-18 22 views
2

これは、Pythonのインポート動作の不完全な理解につながる可能性がありますが、私は誰かがSeleniumのコンテキスト内で次のようなことが起こる理由を説明することができたと考えていました。Selenium webdriver import issues

私がfrom selenium import *を試してみると、NameError: name 'webdriver' is not definedが得られます。

from selenium import webdriverを使用すると、すべてが機能します。

これはなぜですか?

+0

@ozgurバージョン2.53.6 –

答えて

3

あなたはセレンプロジェクトのトップレベル__init__.pyファイルを見れば、あなたはわかります

from selenium import selenium 

ので、それはセレンをインポートし、実際に任意のクラス、変数などを持っていないselenium.pyファイルをインポートその中にwebdriverという名前が付けられています。ここで

はセレン2.53.6のモジュール階層です:

selenium 
-- __init__.py 
-- selenium.py 
-- webdriver 
    -- ... 

は、実際にwebdriverモジュールをインポートするには、あなたが実行する必要があります。

from selenium import webdriver 
+0

をので、どのような方法がありますセレンからすべてをインポートするには? Webdriver、Alerts、Keys、そして今の例外を含む私のリストは増加しています。ちょっと面倒です。 –

+0

申し訳ありませんが、私はセレンに精通していません。アラート、キー、例外はどこでインポートしますか? – ozgur

+0

"from selenium import webdriver"、 "from selenium.webdriver.common.alert import Alert"、 "from selenium.webdriver.common.keys import Keys"、 "from selenium.common.exceptions import *" –