현재 커서 위치 또는 이와 유사한 것을 표시하는 방법이 있습니까? 나는 어떤 객체의 정확한 점을 클릭해야하는 액션 체인을 가지고 있지만 잘못된 좌표를 선택했다고 생각합니다. 나는 Firefox webdriver를 사용한다. 나는 우리가 이것에 대한 어떤 로케이터를 사용할 수 없기 때문에 직접 해상도를 변경하기위한 가능한 모든 방법을 볼 수 없습니다셀렌의 현재 커서 위치 표시
from selenium import webdriver
import time
from selenium.webdriver.common.action_chains import ActionChains
driver = webdriver.Firefox()
driver.get("http://www.mysite/")
elem = driver.find_element_by_xpath('//div[@id="player"][1]/object[@type="application/x-shockwave-flash"]')
action_chains = ActionChains(driver)
action_chains.move_to_element_with_offset(elem, 660, 420).perform()
action_chains.click().perform()
time.sleep(10)
driver.close()
매우 나쁜 방법입니다. 당신은 다른 브라우저/컴퓨터/등으로이 포트를 옮기 자마자 문제를 겪게 될 것입니다. 거의 항상 마우스를 사용하지 않고 클라이언트 동작을 만드는 방법이 있습니다. 이것이 유일한 방법 일지라도 여전히 방법은 커서 위치를 사용하지 않고 그것을 할 수 있습니다. 이것이 유일한 방법 인 경우 브라우저 창을 특정 크기로 설정 한 경우에만 요소를 클릭 할 수 있습니다. 액세스하려는 웹 사이트의 URL을 제공하면 노력하고있는 것을 성취 할 수있는 더 나은 방법을 찾을 수 있습니다. –
@barakmanos 의견을 보내 주셔서 감사합니다. 불행히도 페이지의 해당 개체로 작업 할 수있는 다른 방법은 없습니다. 예를 들어, http://www.jwplayer.com/에서 동영상을 시작하고 해상도를 변경하고 싶지만 API는 사용하지 않고 있다고 가정 해 보겠습니다. –
나는 barak manos에 동의합니다. 일반적인 경우에는 이것을 원하지 않지만 플래시 플레이어를 클릭하려고합니다. 나는이 테스트를 수행하기 위해 좌표를 사용하는 것에 의존하지 않는 브라우저 (예 : Selenium처럼)만을 제어함으로써 작동하는 솔루션을 모른다. 그러나 Selenium과 같은 플래시 요소를 찾을 수있는 플래시 용으로 설계된 테스트 솔루션이 DOM 요소를 찾을 수 있습니까? – Louis