Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 15, 2016 20:38:19

kaldown
Зарегистрирован: 2015-07-16
Сообщения: 23
Репутация: +  0  -
Профиль   Отправить e-mail  

Симуляция нажатия на SVG используя Selenium

Всем привет.
Подскажите плиз, как можно закрывать frame в 2gis, используя selenium (unithtml)?
На пример здесь
Я уже как только не пробовал, не пойму. Говорит либо такого css_selector не существует, либо графические елементы можно использовать только в header-browser.ъ Я вот просто выбираю любой элемент из появившегося первоначально списка, открывается фрейм. И в этом фрейме (используя bugtracker) выделяю xpath или css, но потом element.click() не срабатывает

from selenium import webdriver
from lxml import etree, html
 
 
url = "http://2gis.ru/moscow/search/%D1%81%D0%BF%D0%BE%D1%80%D1%82%D0%B8%D0%B2%D0%BD%D1%8B%D0%B5%20%D1%81%D0%B5%D0%BA%D1%86%D0%B8%D0%B8/center/37.437286%2C55.753395/tab/firms/zoom/11"
 
driver = webdriver.Firefox()
#driver = webdriver.Remote(desired_capabilities=webdriver.DesiredCapabilities.HTMLUNIT)
 
driver.get(url)
content = (driver.page_source).encode('utf-8')
doc = html.fromstring(content)
 
elems = doc.xpath('//article[@data-module="miniCard"]')
elem = elems[0]
 
# get element id to click on
el1_id = elem.attrib['id']
 
#simulate click to open frame
el1_to_click = driver.find_element_by_xpath('//article[@id="{0}"]//\
                   a[contains(@class, "miniCard__headerTitle")]'.format(el1_id))
el1_to_click.click()
 
#some stuff
pass
 
#now need to close this
close = driver.find_element_by_xpath('//html/body/div[1]/div/div[1]/div[2]/div[2]/div[2]/div/div[2]/div/div[2]/div[3]/div[1]/div[2]/svg/use')
close.click()

Но вот последний кусок не срабатывает. Не могу закрыть фрейм.
Как это можно сделать?

Спасибо!

Отредактировано kaldown (Янв. 15, 2016 20:38:39)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version