Тоже начал ловить это ошибку, причем на работающим уже месяц проекте.. element not interactable
Какие только не пробовал проверки, пока проблему решить увы не получилось...
Андрей, у меня стоит linux на ноутбуке. И второй системой на отдельном ssd, но мне нужно работать с win приложениями тоже + я работаю с графикой, и полностью отказаться от окон не могу.
К сожалению я так сделать не могу в силу того что приходиться работать с графикой, а тот же фотошоп например так нормально и не работает, не говоря уже про иллюстратор. Сейчас буду пробовать ставить Pro for Workstations, и настраивать виртуальное окружение с старыми версиями vbox и toolbox, если всё получиться то отпишусь обязательно.
Станислав, а VMWare в действительности даёт прирост какой-то? Я по ощущениям не сильно заметил, если xfce например стоит. А VMWare лучше через плеер использовать или Workstation? И если не секрет то какой дистр крутиться?
Ivan Yakushenko, если тебе важно явным образом указывать где именно искать, попробуй посмотреть класс первого
div
//*[@id="app"]/div/div/div[2]/div[1]/div/<- Этого div[2]/div[@data-ref]
Или если у него нет класса, то быть может есть атрибут за который можно будет его вывалить. И уже к нему можно будет обратиться через div[2]/div[@data-ref]
И опять же, ты можешь попробовать найти список этих див'ов ->div[2]/div[@data-ref] через find_elements, и собственно уже там по индексу искать. В любом случае тебе стоить понимать простую истину, что нет явно необходимости указывать вложенность, если элементы имеют уникальный идентификатор или класс. А в данном случае они вообще всегда разные (как я понял).
То есть, достаточно сфокусироваться на на том элементе который точно содержит необходимый атрибут (той конструкцией которую я показал) и уже получить из неё необходимые данные.
p.s если имя класса явным образом не говорит что оно фиксированное (то есть содержит какие-то случные набор чисел и букв), то по нему обращаться НЕ следует, проще зацепиться на уровень выше, или по самому тегу, но никогда не использую хэш в качестве имени класса) ибо он просто смениться и элемент ты не найдешь.
з.ы Рекомендую с селеном работать в связи с блоком finally, ибо веб драйвер имеет свойство умирать в процессах и висеть мёртвым грузом.
Ivan Yakushenko, так моя конструкция и подразумевает что ты не знаешь что внутри атрибута, но ты знаешь что нужный див его точно содержит, и собственно просто вместо поиска одного элемента, ты пишешь S и находишь все вхождения на странице
Ivan Yakushenko, тогда лучше всего использовать принцип find_elementS_by_xpath, то есть он отдаст список из div например, и уже итерируясь по этому списку искать необходимый, ну или зная его положение можно сразу обратиться по индексу через [0]
aab137, пакет зависимости который необходим для корректной работы данной библиотеки. Если у тебя ubuntu можешь просто в консоль прописать sudo apt install python-xlib, либо pip install xlib | Если у тебя винда, то я тебе не завидую))))
Sacred70, всё верно, нужно сначала что бы он стал видимым, но есть вероятность что он открывается в фрэйме, тогда нужно будет менять фокус селена. Ты же вроде писал что открывать меню научился, так открой, потому сделай задержку time.sleep(1) и собственно мой вариант