Похоже, что 'ember' идентификаторы могут меняться со временем (возможно, генерируется распределенной CMS), поэтому требуется другой подход к идентификации поля.Приведенный ниже код поможет вам надежно пройти первый экран.Кроме того, поскольку это интерактивная форма, я переключился на модель ожидания, а не использовал таймер сна.
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
# Set options to simplify flow and persist user data
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('disable-infobars')
chrome_options.add_argument('start-maximized')
chrome_options.add_experimental_option('prefs', {'credentials_enable_service': False, 'profile': {'password_manager_enabled': False}})
print("Loading page")
driver = webdriver.Chrome(options=chrome_options)
driver.get('https://alt949.radio.com/contest/holiday-feast-win-free-tickets#//')
print("Find frame")
element = WebDriverWait(driver, 30).until(EC.presence_of_element_located((By.XPATH, "//iframe[@data-ss-embed='iframe']")))
driver.switch_to.frame(element)
print("Enter codeword")
element = WebDriverWait(driver, 30).until(EC.visibility_of_element_located((By.CSS_SELECTOR, ".ssRegistrationField.ssTextboxField.ember-text-field.ember-view")))
element.click()
element.send_keys('codeword')
print("Enter email")
element = WebDriverWait(driver, 30).until(EC.visibility_of_element_located((By.CSS_SELECTOR, ".ssRegistrationField.ssEmailTextboxField.ember-text-field.ember-view")))
element.click()
element.send_keys('myemail@gmail.com')
print("Click Continue")
element = WebDriverWait(driver, 30).until(EC.presence_of_element_located((By.CLASS_NAME, 'ssButton')))
element.click()