에 셀레늄 드라이버를 전달하는 방법? 내가 어떻게 이렇게 달릴 수 있을까? 따라서 작은 테스트 중 하나라도 실패하면 문제가있는 곳이 분명합니다.파이썬은 어떻게 내 코드를 실행할 때 나는이 오류가 계속 기능
generateRandomBroswerInfo()
loginSite()
getSomeInfo()
quitBroswer()
나는 내 코드
파이썬 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의 메서드를 사용하는 것이 좋습니다. –