2017-10-20 6 views
0

저는 Python과 Selenium을 사용하고 있습니다. 내 문제는 내가 튀어 나오는 모달을 전환 할 수 없으며 버튼을 클릭 할 수 없다는 것입니다. 아래의 라인을 삭제하고 작업을해야Selenium을 사용하여 Python에서 모달로 전환하는 방법

마이너스 물론

browser = webdriver.Chrome(executable_path="D:\\sasdsa\\automate\\chromedriver_win32\\chromedriver.exe") 
user_name = browser.find_element_by_xpath("//input[@id='username']") 
user_name.send_keys("test.employee") 

##Password 
pass_word = browser.find_element_by_xpath("//input[@id='password']") 
pass_word.send_keys("123") 

##log_in = browser.find_element_by_css_selector(".btn") 
log_in = browser.find_element_by_xpath("//button[@class='btn btn-sm btn-primary btn-block']") 
log_in.click() 

##punch 
#driver.find_element_by_id("//@id='product_view') 
#To open the modal 
punch_in = browser.find_element_by_xpath("//button[@class='btn btn-success btn-sm pull-right']") 
punch_in.click() 


#cant switch to the modal to access the button 
browser.switch_to_frame("product_view") 
punch_in2 = browser.find_element_by_xpath("//button[@id='save_me']") 
punch_in2.click() 
+0

왜'iframe'에 대해'div'로 바꾸려고합니까? – Andersson

+0

그럼 어떻게해야합니까? 메신저 페이지에서 기본 페이지로 전환하려고합니다 ... –

+0

과 그 코드는 무엇이되어야합니까? –

답변

0

의 URL :이 내 코드입니다

:

모달의 요소입니다 벌금.

browser.switch_to_frame("product_view") 

여기서는 특별한 조치를 취할 필요가 없습니다. 이와 같은 모달 대화 상자는 페이지의 다른 HTML과 마찬가지로 HTML입니다. 다른 것과 마찬가지로 액세스 할 수 있습니다.

는 대화 상자를 실행 버튼 등을 클릭하면 대화 상자가 그 안에 요소에 액세스하기 전에 볼 수 있도록하기위한, 당신은 아마 등 기다려야하는 WebDriverWait을 추가해야 할 것 ... 미루어

관련 문제