Элементы Selenium устаревают на GitHub, но не локально при тестированииPython

Программы на Python
Anonymous
Элементы Selenium устаревают на GitHub, но не локально при тестировании

Сообщение Anonymous »

Я студент университета, и приложение для планирования не очень хорошее, поэтому один из моих студентов решил отказаться от официального планирования в Интернете, чтобы получить лучшее приложение. (Пытался получить API, но они отказываются).
Когда я тестирую его на своем компьютере, все работает нормально и ничего не устаревшего, но когда я нажимаю на действия github, удаляющие его из сети, он устарел в середине. Кто-нибудь знает, что может вызвать это?
Другое дело, что когда я хочу удалить больше (примерно через 15/20 минут), один элемент устаревает. Как мне это предотвратить?
Вот код для отмены курсов

Код: Выделить всё

if course_id not in output:
output[course_id] = {}
output[course_id][name] = {}
course = course_dict[course_id]
WebDriverWait(driver, 10).until(EC.presence_of_all_elements_located((By.XPATH,'//table[@class="as-content"]/tbody/tr')))
driver.implicitly_wait(0.5)
tables = driver.find_elements(By.XPATH,'//table[@class="as-content"]/tbody/tr')
color = getColor("")

for i in range(1,len(tables),2):
course_name = tables[i].find_elements(By.XPATH,'./td/table/tbody/tr/td/span')[0].text
print(course_name)
if course_name in course:
course_name, color_ = course[course_name]
color = getColor(color_)
if course_name not in output[course_id][name]:
output[course_id][name][course_name] = []
list_cursus = tables[i+1].find_elements(By.XPATH,'./td/div/table/tbody/tr')
for cursus in list_cursus:
info  = cursus.find_elements(By.XPATH,'./td')
driver.implicitly_wait(0.1)
date  = info[0].find_element(By.XPATH,'./div').get_attribute("innerHTML").replace(" ", " ")
_time = info[1].get_attribute("innerHTML").replace(" ", " ")
row_date = dateparser.parse(date + ' ' + _time[3:8])
if row_date != None:
start = row_date.strftime("%Y-%m-%dT%H:%M:%S")
end   = dateparser.parse(date + ' ' + _time[10:17]).strftime("%Y-%m-%dT%H:%M:%S")

teacher = info[3].get_attribute("innerHTML").replace(" ", " ")
room = info[4].get_attribute("innerHTML").replace(" ", " ")
title = course_name + '\n' + teacher + '\n' + room

output[course_id][name][course_name].append({'title':title,'start':start,'end':end, 'color': color})
Я пробовал задерживать больше, как сказано на многих других форумах, но это не работает. Я также пытался сменить драйвер с Chrome на Firefox.

Подробнее здесь: https://stackoverflow.com/questions/789 ... en-testing

Вернуться в «Python»