【发布时间】:2019-07-24 06:20:36
【问题描述】:
我正在开发一个连接到网络并上传+下载大量文件的程序,但是在没有time.sleep() 的情况下运行后,它以错误结束。
我尝试更改以查找另一个元素,但我不想使用time.sleep() 函数来执行此操作,因为并非所有文件都太大。
for z in prevadzka:
basepath = path_ + z + '\\'
file_x = [fn for fn in os.listdir(basepath) if fnmatch.fnmatch(fn, 'P???????.*')]
fin_nazov = 0
for x in file_x:
# upload button
file_upload = WebDriverWait(driver,30).until(
EC.presence_of_element_located((By.XPATH,xpath_upload)))
file_upload.send_keys(os.path.abspath(basepath + x))
overit = WebDriverWait(driver,30).until(
EC.element_to_be_clickable((By.XPATH, xpath_overit)))
driver.find_element_by_xpath(xpath_overit).click()
#time.sleep(10)
prevziat = WebDriverWait(driver,300).until(EC.element_to_be_clickable((By.XPATH, xpath_prevziat)))
driver.find_element_by_xpath(xpath_prevziat).click()
#prevziat.click()
time.sleep(2.5) # time for download file
driver.get(link)
driver.close()
我希望代码等到下载按钮出现(它没有) 然后继续处理其他文件。
【问题讨论】:
标签: python-3.x selenium-webdriver webdriverwait