Dima_TOK
(Дима ТОК)
02.Май.2017 10:34:22
#1
Привет. Заранее спасибо за ответ.
Проблема в том что не находит кнопку “Написати листа “, ошибка unable to locate element.
Питался через xpath. css. и тд ,на скрине путь прописал руками , тоже не работает
.
driver.findElement(By.xpath(”//aside[@class=‘sidebar’]/button[@class=‘default compose’]”)).click();
Подскажете пожалуйста в чем проблема , или видосик по теме , может я что то упустил( не давно начал изучать).Спасибо.
Возможно в тот момент, когда вы пытаетесь кликать по кнопке, она еще не подгрузилась. Попробуйте ожидание.
Taras
(Taras)
02.Май.2017 12:37:08
#3
Dima_TOK:
aside
проблема в теге aside
попробуйте так //*[local-name()=‘aside’ and contains(@class ,‘sidebar’)]/button[contains(@class ,‘default’) and contains(@class ,‘compose’)]
Dima_TOK
(Дима ТОК)
03.Май.2017 13:20:55
#4
JavaScript error: , line 0: uncaught exception: undefined
и снова ошибка unable to locate element.
Taras
(Taras)
03.Май.2017 13:43:54
#5
“JavaScript error: , line 0: uncaught exception: undefined” - то ти где такое получаешь ?
Mes
(Bolatbek)
03.Май.2017 13:53:08
#8
Попробуй css:
#content > aside > .default.compose
Или такой xpath:
//div[@id='content']//button[@class='default compose']
Набросал на коленке код. Работает xD
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.wait import WebDriverWait
login = 'your_login'
password = 'your_password'
chrome_path = r'C:\\_Tools\\chromedriver.exe'
driver = webdriver.Chrome(chrome_path)
driver.get('https://mail.ukr.net/')
driver.find_element_by_id('login').send_keys(login)
driver.find_element_by_id('password').send_keys(password)
driver.find_element_by_css_selector('.login__foot>button').click()
wait = WebDriverWait(driver, 30)
button = wait.until(EC.element_to_be_clickable((By.CSS_SELECTOR, '.default.compose')))
button.click()
Taras
(Taras)
03.Май.2017 14:06:57
#10
там мерионнет в логах пишет о accessebility role - попробуй без @class - //*[local-name()=‘aside’]/button[text()]
Dima_TOK
(Дима ТОК)
03.Май.2017 14:25:45
#12
css- JavaScript error: , line 0: uncaught exception: undefined
xpath-Unable to locate element
Mes
(Bolatbek)
03.Май.2017 14:32:25
#14
Написал в ЛС. Проверь плиз.
Mes
(Bolatbek)
03.Май.2017 14:47:10
#15
Вообще по логу - ругается не на эту строку, а на другое совсем.
Mes
(Bolatbek)
03.Май.2017 14:56:14
#16
Проблема решилась.
Нужно было просто переключиться в нужное окно браузера.
Dima_TOK
(Дима ТОК)
03.Май.2017 14:57:04
#17
я не свичнул окно, спасибо за ответ)
Dima_TOK
(Дима ТОК)
03.Май.2017 14:57:54
#18
я не сменил окно, спасибо за ответ)
Try css selector By.cssSelector(“div#content button.default.compose”)