Обнаружено, что я могу обойти это, удалив элемент div, содержащий весь баннер.Мне удалось найти его с помощью селектора CSS, а затем удалить его с помощью некоторого Javascript (скопированного / вставленного).
Это позволяет моим кликам регистрироваться, чтобы я мог получать свои элементы по мере необходимости.
Приведенный ниже код пытается подождать всплывающее окно в течение 5 секунд, в этом случае он удаляет элемент, в противном случае он продолжает пытаться щелкнуть.
delay = 5
try:
myElem = WebDriverWait(d, delay).until(EC.presence_of_element_located(
(By.CSS_SELECTOR, 'body > div.generalOverlay.js-general-overlay.displayNone.js-promotional')))
element = d.find_element_by_css_selector('body > div.generalOverlay.js-general-overlay.displayNone.js-promotional')
d.execute_script("var element = arguments[0];element.parentNode.removeChild(element);", element)
print("Pop-Up Negated")
except TimeoutException:
print("No Pop-Up Detected")
aElements = d.find_elements_by_tag_name("a")
for name in aElements:
if name.get_attribute("href") is not None and "javascript:void" in name.get_attribute("href"):
if (name.text == i):
print(name.text)
name.click()
break
Любые комментарии по улучшению могут быть высоко оценены.