Я создал сценарий автоматической проверки в Python 3.8 для следующего веб-сайта https://fasttimes.com.au/ (сайт создан с использованием Magento), и все кнопки, выпадающие списки, входы и т. Д. c работали до этого момента. Однако на этапе выбора доставки кнопка, отвечающая за сохранение сведений о доставке и разрешение перейти к этапу выставления счета, согласно консоли python, гласит: «Сообщение: элемент не взаимодействует».
Я пытался использовать execute_script
для непосредственного взаимодействия с сайтом, это не приводит к ошибке и говорит, что она завершена, но в WebDriver кнопка фактически не была щелкнул и поэтому процедура перехода к следующему этапу оформления заказа не состоялась. Что касается «цепочек действий». они просто выдают ошибку, указанную выше, так же, как и поиск по XPATH
или CSS_Selector
. Я пытался использовать импорт «Ключи» и пытался нажать кнопку «ENTER», а также использовать замену WebDriver .send_keys(u'\ue007')
безрезультатно. До того, как это упомянуто ниже, я также пытался использовать ожидания, однако, возможно, я делаю их неправильно?
Например:
element = WebDriverWait(driver, 15).until(
ec.presence_of_element_located((By.ID, "login:guest")))
Исправьте меня, если строка выше неверного форматирования
Сайт HTML выглядит следующим образом:
<div class="buttons-set" id="shipping-method-buttons-container">
<p class="back-link"><a href="#" onclick="checkout.back(); return false;"><small>« </small>Back</a></p>
<button type="button" class="button" onclick="shippingMethod.save()"><span><span>Continue</span></span></button>
<span id="shipping-method-please-wait" class="please-wait" style="display:none;">
<img src="https://static.fasttimes.com.au/skin/frontend/ultimo/default/images/opc-ajax-loader.gif" alt="Loading next step..." title="Loading next step..." class="v-middle"> Loading next step... </span>
</div>
Мой текущий код:
driver.find_element_by_xpath("//*[@id='shipping-method-buttons-container']/button").send_keys(u'\ue007')
Любые предложения будут с благодарностью. Я считаю, что кнопка, с которой я пытаюсь взаимодействовать, это
<button type="button" class="button" onclick="shippingMethod.save()"><span><span>Continue</span></span></button>
... но я не слишком уверен. Я чувствую, что на данный момент я исчерпал все возможные пути, но я отказываюсь верить, что эта проклятая кнопка не поддается решению! Спасибо :) 1026 *