Spotify网络播放器:选择元素'播放'按钮w / Selenium

时间:2015-09-16 23:05:20

标签: python python-2.7 selenium selenium-webdriver spotify

我一直在尝试通过selenium选择Spotify网络播放器上的播放按钮进行一系列测试,但无法成功定位。我已经尝试过 CSS Selector

driver.find_element_by_css_selector("#header .button-primary").click()

xpath

driver.find_element_by_xpath("//button[@class=\"button-primary\"]")

这是我的错误调用堆栈:

  

回溯(最近一次呼叫最后一次):文件" Spotify Dumbass.py",line   37,在test_spotify_dumbass中       driver.find_element_by_css_selector(" #header .button-primary")。click()文件   " /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py" ;,   第396行,在find_element_by_css_selector中       return self.find_element(by = By.CSS_SELECTOR,value = css_selector)File   " /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/selenium/webdriver/remote/webdriver.py" ;,   第684行,在find_element中       {'使用':by,' value':value})[' value'] File" /Library/Frameworks/Python.framework/Versions/ 2.7 / LIB / python2.7 /站点包/硒/ webdriver的/远程/ webdriver.py&#34 ;,   第195行,执行中       self.error_handler.check_response(response)File" /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/selenium/webdriver/remote/errorhandler.py",   第170行,在check_response中       raise exception_class(message,screen,stacktrace)NoSuchElementException:消息:无法找到元素:   {"方法":" css选择器","选择器":" #header .button-primary"}   堆栈跟踪:       在FirefoxDriver.prototype.findElementInternal_(file:///var/folders/Ne/NepmGbBUFwK7TxfPj5g0gE++++TI-/Tmp-/tmpSLKAhJ/extensions/fxdriver@googlecode.com/components/driver-component.js:10299)       at fxdriver.Timer.prototype.setTimeout /< .notify(file:///var/folders/Ne/NepmGbBUFwK7TxfPj5g0gE++++TITI-/Tmp-/tmpSLKAhJ/extensions/fxdriver@googlecode.com/components/driver-component的.js:603)

1 个答案:

答案 0 :(得分:2)

" play"按钮位于iframe 中,在找到元素之前切换到它:

driver.switch_to.frame("app-player")
play = driver.find_element_by_id("play-pause")
play.click()