Size: a a a

2020 July 05

A

Alexandr in atinfo chat
Roman (rpwheeler)
Возможно что current_url не дождался загрузки страницы. Сделайте ожидание которое загрузки дождётся, а потом читайте current_url
Я уже разное время пробовал - не получается
источник

СС

Сказочный Сникерс... in atinfo chat
Alexandr
Всем привет! Такой вопрос несложный - как определить на какой странице я нахожусь?
Подробности автоматизации:
1. Открываю браузер и перехожу на яндекс.ру
2. Нахожу ссылку и перехожу на неё (яндекс/видео)
Необходимо сверить что я нахожусь на той ссылке(яндекс/видео), на которую рассчитываю.
current_url выдаёт яндекс.ру, а не яндекс/видео
Есть критерий по которому можно определить что ты находишься там где надо?
источник

СС

Сказочный Сникерс... in atinfo chat
Элемент, событие еще что то
источник

A

Alexandr in atinfo chat
Сказочный Сникерс
Есть критерий по которому можно определить что ты находишься там где надо?
Ссылка имеет target=_blank, т.е. при нажатии будет открыта новая вкладка с ссылкой
Также, визуально видно что открыта вторая вкладка с ссылкой
Какие ещё можно применить события?
По элементам - можно, думаю, что-то накопать ещё; но а тех недостаточно?)  ↑
источник

СС

Сказочный Сникерс... in atinfo chat
Тебе нужен элемент который есть только на этой странице
источник

СС

Сказочный Сникерс... in atinfo chat
Его и жди
источник

A

Alexandr in atinfo chat
Сказочный Сникерс
Тебе нужен элемент который есть только на этой странице
Но мне надо сначала верифицировать что я попал на Яндекс/видео
источник

СС

Сказочный Сникерс... in atinfo chat
Я вообще делал так. Искал такие элементы. Делил на пейджы, базовая пейджа в ините дергала метод is_opened который ждал дефолтный элемент конкретной пейджы. В каждой пейдже он указан был статикой. В итоге при каждом переходе и ините конкретная пейджа дожидалась своего открытия и готовности к работе. Метод is_opened можно переопределить если нужна более сложная логика(например ожидание нескольких элементов и какие то кастомные действия, допустим скрыть попап)
источник

СС

Сказочный Сникерс... in atinfo chat
Alexandr
Но мне надо сначала верифицировать что я попал на Яндекс/видео
Зачем? Поиск элемента и будет твоей верификацией
источник

СС

Сказочный Сникерс... in atinfo chat
Если элемент не найдется - вот тебе и фейл
источник

A

Alexandr in atinfo chat
Сказочный Сникерс
Если элемент не найдется - вот тебе и фейл
Хм, завтра попробую кнопками (send_keys) ещё раз закрыть первую вкладку. Не получится - буду этим методом
Спасибо!
источник

R(

Roman (rpwheeler) in atinfo chat
Alexandr
Ссылка имеет target=_blank, т.е. при нажатии будет открыта новая вкладка с ссылкой
Также, визуально видно что открыта вторая вкладка с ссылкой
Какие ещё можно применить события?
По элементам - можно, думаю, что-то накопать ещё; но а тех недостаточно?)  ↑
Для того чтобы получить урл новой вкладки надо на неё перейти.

Копать в сторону вкладок и их выбора.
источник

A

Alexandr in atinfo chat
Roman (rpwheeler)
Для того чтобы получить урл новой вкладки надо на неё перейти.

Копать в сторону вкладок и их выбора.
То есть вкладка не становится активной, если она открылась из-за клика по ссылке в другой вкладке?
источник

R[

RadioKot [ZT UA] in atinfo chat
Alexandr
Хм, завтра попробую кнопками (send_keys) ещё раз закрыть первую вкладку. Не получится - буду этим методом
Спасибо!
а ты переходишь на новую вкладку?
browser.switch_to.window(window_name)
источник

R[

RadioKot [ZT UA] in atinfo chat
Сказочный Сникерс
Декоратор пусть сохраняет в дикт, ключ - действие, значение - время
а время чем фиксировать?
источник

СС

Сказочный Сникерс... in atinfo chat
RadioKot [ZT UA]
а время чем фиксировать?
Разницей между началом выполнения декорируемой функции и ее концом
источник

СС

Сказочный Сникерс... in atinfo chat
В случае успеха естественно, в случае фейла сам решай нужна тебе эта инфа или нет
источник

СС

Сказочный Сникерс... in atinfo chat
Alexandr
То есть вкладка не становится активной, если она открылась из-за клика по ссылке в другой вкладке?
Нет
источник

СС

Сказочный Сникерс... in atinfo chat
RadioKot [ZT UA]
а время чем фиксировать?
Простейший короче декоратор на подсчет времени функции
источник

СС

Сказочный Сникерс... in atinfo chat
Ключом может быть имя функции, оно доступно. Можешь сделать параметризованный декоратор, тогда параметром передавать нужный ключ
источник