Проверка доступности элемента

#python #bots

#python #боты

Вопрос:

 import time
import os
import subprocess
from selenium import webdriver

def aval():
    driver = webdriver.Chrome()
    driver.get("webpage")
    try:
        while True:
            driver.find_element_by_xpath('xpath')
            time.sleep(5)
            print("out of stock")
            driver.refresh()
    except:
        print("in stock")
        return True


def speech():
    applescript = """
    display dialog "something in stock" ¬
    with title "This is a pop-up window" ¬
    with icon caution ¬
    buttons {"OK"}
    """

    subprocess.call("osascript -e '{}'".format(applescript), shell=True)

def comp():
    if aval() == True:
        n = 0
        while n != 7:
            os.system("say 'something is in stock'")
            n  =1
        som()
 

У меня проблема с определением, есть ли товар на складе или нет. Я использовал XPath, чтобы определить, есть ли товар на складе или нет. Проблема в том, что когда я пытаюсь ввести доступный элемент, он должен обновить страницу, но вместо этого он говорит, что он есть в наличии. Это работает так, как я думал, но я не уверен, почему это указано в наличии, когда он просто должен перезагрузить страницу. Кроме того, не могли бы вы, пожалуйста, критиковать мой код? Я хочу знать, что вы думаете об этом.

Ответ №1:

Вероятно, существует ошибка при нахождении элемента на странице, означающая, что он выполняет блок except. Вы должны проверить правильность вашего x-пути

Комментарии:

1. Спасибо, я проверю