Коллеги, доброго дня. Есть скрипт для генерации временной лицензии для conflunce:
from pyvirtualdisplay import Display
display = Display(visible=0, size=(800, 600))
display.start()
# -*- coding: utf-8 -*-
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import Select
from selenium.common.exceptions import NoSuchElementException
from selenium.common.exceptions import NoAlertPresentException
import unittest, time, re
driver = webdriver.Firefox()
driver.get("https://id.atlassian...atlassian.com")
driver.find_element_by_id("username").send_keys("MY_NAME@XX.ru")
driver.find_element_by_id("form-login").submit()
time.sleep(10)
driver.find_element_by_id("login-submit").click()
driver.find_element_by_id("password").clear()
driver.find_element_by_id("password").send_keys("MY_PASSWORD")
driver.find_element_by_id("login-submit").click()
time.sleep(20)
driver.find_element_by_link_text("New Evaluation License").click()
driver.find_element_by_id("product-select").click()
Select(driver.find_element_by_id("product-select")).select_by_visible_text("Confluence")
driver.find_element_by_xpath("//option[@value='Confluence']").click()
driver.find_element_by_xpath("//div[@id='content']/div/div/div/form/fieldset/div[2]/div/label[2]/span[3]").click()
driver.find_element_by_id("serverid").click()
driver.find_element_by_id("serverid").clear()
driver.find_element_by_id("serverid").send_keys("XXX-XXX-XXX-XXX")
driver.find_element_by_id("generate-license").click()
Лицензия генерится нормально.
Теперь мне необходимо скопировать полученную лицензию и вставить в новое место:
Но у поля сгенерированной лицензии id получается динамический и он будет менять каждый раз при генерации.
Вопрос 1 - как правильно скопировать данные из этого поля.
Вопрос 2 - как правильно вставить эти данные и новое место.
Всю голову сломал.
Если id динамический, то необходимо использовать другие стратегии поиска (по классу, по тегу, по тексту и т.п.).
Какой html-код рядом с полем со значением лицензии ?