にセレンドライバを渡すために、私は自分のコードを実行するときに、このエラーを取得し続ける:Pythonはどのように機能
**name 'driver' is not defined**
誰が、なぜ教えてもらえますか?どうすればこのように動かすことができますか?したがって、小さなテストのいずれかが失敗した場合、問題がどこにあるかは非常に明確です。
generateRandomBroswerInfo()
loginSite()
getSomeInfo()
quitBroswer()
私は私のコード
のPython 3.6にセレンを使用しています:あなたはgenrateBroswer
内のローカルdriver
を定義している
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
from selenium.common.exceptions import TimeoutException
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
def genrateBroswer():
dcap = dict(DesiredCapabilities.PHANTOMJS)
dcap["phantomjs.page.settings.userAgent"] = ('Mozilla/5.0 (iPhone; CPU iPhone OS 5_0 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9A334 Safari/7534.48.3')
driver = webdriver.PhantomJS(desired_capabilities=dcap)
driver.set_window_size(300, 600)
def letssee():
driver.get('http://www.whatsmyip.org/')
driver.save_screenshot('this.png')
genrateBroswer()
letssee()
#ETC
答えがマークされました。しかし、私の問題を解決した答えではなく、私の可変ドライバを変数グローブに変えました。 –
@FutureHendrixsクラスから離れたければ、関数に 'driver'を渡し、更新された' driver'を返すことで、bgseのメソッドをお勧めします。 –