Я не уверен, как взять это исключение selenium / webdriver и создать оператор try / exception / else со следующей строкой исключения.Веб-сайт, который я иногда обрабатываю, может не содержать искомого элемента, но я хотел бы устранить это исключение и двигаться дальше.
selenium.common.exceptions.WebDriverException: Сообщение: хром недоступен
Я пробовал некоторые варианты этой строки в моем операторе "без".
def planCosts():
driver.get("https://shop.freedommobile.ca/devices/Samsung/Galaxy_S10+?sku=887276301570&planSku=Freedom%20250MB")
MSRP = wait.until(EC.presence_of_all_elements_located((By.CSS_SELECTOR, '.cKlhCz')))
MSRP = MSRP[0].text
MSRP = re.findall(r'\d+', MSRP)
MSRP = int(MSRP[0])
print(MSRP)
# grabbing the lowest upfront payment from string of min and max
try: # checks to see if element exist
upfrontPaymentRaw = wait.until(EC.presence_of_all_elements_located((By.CSS_SELECTOR, '.col-lg-6 .fTfebt')))
upfrontPayment = upfrontPaymentRaw[0].text
except selenium.common.exceptions.WebDriverException: #if I get an error looking for it then just make it default number above(MSRP)
myTabCharge = MSRP
else: #if no error run this code
upfrontPayment = re.findall(r'\d+', upfrontPayment)
upfrontPaymentLowest = int(upfrontPayment[0])
upfrontPaymentHighest = int(upfrontPayment[1])
myTabCharge = (upfrontPaymentHighest - upfrontPaymentLowest) / 24
Я надеюсь, что у меня будет возможность попробовать / исключить / еще оператор, который открывает браузер, ищет этот элемент, если онвозвращает исключение, в котором говорится, что элемент существует, а переменная, в которой я искал его сохранение, будет номером по умолчанию.Затем продолжите выполнение оставшейся части кода.