2012-09-18 4 views
0

특정 기간 동안 엘레멘트 위로 마우스를 올리면 콤보 박스 하위 메뉴에 숨겨진 항목이 있고 1 ~ 5 초 동안 부 메뉴가 표시됩니다. 기본적으로 파이썬에서는 요소 위로 마우스를 가져갈 시간을 어떻게 설정할 수 있습니까?셀레늄이 요소 위에 맴돌다

지금까지 :

from selenium import webdriver 
from selenium.webdriver.common.action_chains import ActionChains 

firefox = webdriver.Firefox() 
firefox.get('') 
element_to_hover_over = firefox.find_element_by_id("") 

hover = ActionChains(firefox).move_to_element(element_to_hover_over) 
hover.perform() 
+0

페이지의 소스 코드를 표시 할 수 있습니까? – root

답변

0

난 당신이 또한 수, 당신은 시간 제한 조건으로 1~5초있어 사용하는 경우, 비록 당신이

# Pause for 5 seconds 
import time 
time.sleep(5) 

time.sleep처럼 뭔가를 찾고 생각 Selenium의 WebDriverWait 기능 (docs 참조)을 사용하면 1-5 초 후에 무슨 일이 일어나기를 기다릴 수 있습니다.

+0

그것은 작동하지만 불안정합니다. 때로는 움직이기도하고 다른 시간에 다른 아이디어가 있습니까? –

+0

@ user1582983 음, 확실하지 않습니다. 마우스를 올리면 버그가 발생합니다. 내 경험으로 볼 때, Selenium은 호버링과 같은 액션으로 다소 기발한 것일 수 있습니다. 이 기능을 독점적으로 사용하는 것을 피할 수있는 방법이 있다면 추천 할 것입니다. – Will

+0

내가 크롤링하는 웹 사이트를 살펴볼 수 있습니까? 이것은 웹 사이트, https://mbsdisclosure.fanniemae.com/PoolTalk2/index.html,> 고급 검색> # 그런 다음 콤보 상자 예비 메가의 예비 메뉴 옵션을 찾고 있습니다> 예비 메가 : Fannie Mae/Ginnie Mae 지원 가변 속도 –

0

나는 창의적인 방법을 찾고 싶습니다. 일반적으로 호버 메뉴에는 자바 스크립트의 스 니펫별로 표시 여부가 활성화되거나 비활성화되어 있으며 옵션의 실제 코딩은 웹 페이지에 표시되기 전에 기능적으로 표시됩니다. selenium을 사용하여 숨겨진 텍스트에 대한 combobox 요소를 긁은 다음 combobox를 조작하는 셀렉트 셀렉트 기능을 사용하면 실제 마우스 조작에 의존하지 않고도 콤보 상자를 조작 할 수있는 방법을 찾을 수 있습니다 (버그 및 신뢰할 수있는 웹 페이지 조작 방법).

관련 문제