我希望程序单击spotify上的“播放”按钮来播放歌曲,但很遗憾,我收到此错误
selenium.common.exceptions.JavascriptException:消息:javascript错误:arguments [0] .click不是函数
我尝试的代码是
WebDriverWait(driver, 3).until(EC.presence_of_element_located((By.XPATH,"//*[text()='PLAY']")))
time.sleep(1)
driver.execute_script("arguments[0].click();", driver.find_element_by_xpath("//*[text()='PLAY']"))
有人可以帮我找到按钮并单击它吗,我也尝试过
driver.find_element_by_xpath("//*[text()='PLAY']").click()
但是我得到错误元素不可交互
答案 0 :(得分:0)
WebDriverWait等待=新的WebDriverWait(驱动程序,10); wait.until(ExpectedConditions.visibilityOf(driver.find_element_by_xpath(“ // div [@ class ='TrackListHeader__button TrackListHeader__button--top'] // button“))));
Thread.sleep(1000);
driver.find_element_by_xpath(“ // div [@ class ='TrackListHeader__button TrackListHeader__button--top'] // button“)。click();
也尝试这个
答案 1 :(得分:0)
EC有一个很好的方法,可以在执行操作element_to_be_clickable
之前验证元素是否可单击。
此外,我使用您的XPath在Spotify上发现了20多个元素,因此我对其进行了修改,以寻找button
而不是*
。
尝试一下:
WebDriverWait(driver, 3).until(EC.element_to_be_clickable((By.XPATH,"//button[text()='PLAY']")))
driver.find_element_by_xpath("//button[text()='PLAY']").click()
我希望这会有所帮助。祝你好运!