Как заставить Selenium обновляться, если сайт загружается слишком долго

Вот мой код:

      from selenium import webdriver
import time
browser = webdriver.Edge()

st1 = time.time()
browser.get("http://app1.helwan.edu.eg/Commerce/HasasnUpMlist.asp")
et1 = time.time()
el1 = et1-st1
print(f"Elapsed Time is: {el1} Seconds")
# 10.48

st2 = time.time()
my_id = browser.find_element("name","x_st_settingno")
submitting = browser.find_element("name","Submit")
my_id.send_keys(18760)
submitting.click()
et2 = time.time()
el2 = et2-st2

link_to_natega = browser.find_element("xpath",'//*[@id="ewlistmain"]/tbody/tr[3]/td[9]/font/b/span/a')
link_to_natega.click()

Это прекрасно работает. Проблема в . Я попытался сделать функцию обновления с помощьюbrowser.refresh()когдаif el1>=10

Но оказалось, как я, возможно, понял из статей, это то, чтоel1вычисляется после выполнения кода. Я хочу, чтобы он измерял время загрузки в режиме реального времени и постоянно обновлял число, чтобы я мог отслеживать, а затем обновлять страницу, если условие выполняется.

Чтобы четко сформулировать проблему:

  1. Программа попытается получить доступ к «http://app1.helwan.edu.eg/Commerce/HasasnUpMlist.asp».
  2. Если это занимает более 10 секунд, обновите(), в противном случае продолжите выполнение кода.
  3. Еслиel2также больше, чем10, вернитесь к исходному URL-адресу «http://app1.helwan.edu.eg/Commerce/HasasnUpMlist.asp» и повторите код.

0 ответов

Другие вопросы по тегам