2015-10-13 9 views
0

Мне нужно протестировать два веб-сайта, используя selenium webdriver на python. Моя цель - сделать и сохранить изменения на одном веб-сайте, а затем посмотреть, изменился ли другой веб-сайт соответствующим образом. Я хочу внести изменения, а затем переключиться в другое окно с другим сайтом, а затем обратно и вперед несколько раз. Является ли это возможным? Спасибо!Сравнение двух сайтов в двух окнах с использованием selenium webdriver и python

+1

Что вы пытались и что было результатом? Как вы это делали в школе ... пожалуйста, покажите свою работу. :) Это часть процесса получения ответов на SO. Это полезно для вас, потому что это заставляет вас исследовать вашу собственную проблему и продумать ее. Это также доказывает читателям, что вы сделали домашнее задание и предприняли разумную попытку ответить на собственный вопрос. В-третьих, это помогает читателям находить и диагностировать проблему, что дает лучший ответ для вас и меньше времени, потраченного на нас. – JeffC

+0

@JeffC Человек попросил логику выполнить свою задачу. Я не уверен, что вы ожидаете от него. – LINGS

+0

@LINGS Я ожидаю, что каждый, кто задаст вопрос о SO, сделает домашнее задание. Они должны потратить некоторое время на поиски ответа на свой вопрос и попробовать что-нибудь, что угодно. SO не является услугой кодирования, в которой люди задают вопросы, и мы предоставляем код. Если вы прочитаете [Как задать хороший вопрос] (http://stackoverflow.com/help/how-to-ask), вы увидите эти принципы. Я видел вопросы о SO, касающиеся переключения между окнами. Они должны начать там и написать базовый код и продолжать добавлять его до тех пор, пока они не застрянут. Они публикуют свой код и задают хороший вопрос. – JeffC

ответ

0

Вы можете открыть новое окно, driver.execute_script("window.open('');"), а затем переключиться на него driver.switch_to.window(driver.window_handles[1]), то вы можете ездить. Если вы хотите вернуться в первое окно driver.switch_to.window(driver.window_handles[0]).

>>> driver.window_handles 
[u'{7355ca99-910b-554d-8478-f8a550e0c767}'] 
>>> driver.execute_script("window.open('');") 
>>> driver.window_handles 
[u'{7355ca99-910b-554d-8478-f8a550e0c767}', u'{5a0824a9-9d55-0841-87b8-35a26d4a8b83}'] 
>>> driver.switch_to.window(driver.window_handles[1]) 
>>> driver.get("http://www.google.com") 
>>> driver.switch_to.window(driver.window_handles[0]) 
>>> driver.get("http://www.yahoo.com") 
+0

спасибо! это помогло много :) –

+0

@JanGalik приветствует. Надежда upvote :) –

-2

Возможно, просто переключайтесь между окнами, используя правильные команды в selenium webdriver.

Если вы хотите сравнить графические элементы, это действительно хорошая идея, чтобы автоматизировать его.

Для как перемещаться между окнами смотрите здесь http://selenium-python.readthedocs.org/en/latest/navigating.html