Remove usage of `pathlib.Path.unlink(missing_ok=...)` (#9227)
remove usage of pathlib.Path.unlink(missing_ok=...) Co-authored-by: Yannick Merkli <ymerkli@latticeflow.ai>pull/9230/head
parent
4a37381ee8
commit
5f1000a499
|
@ -917,7 +917,9 @@ def autosplit(path=DATASETS_DIR / 'coco128/images', weights=(0.9, 0.1, 0.0), ann
|
||||||
indices = random.choices([0, 1, 2], weights=weights, k=n) # assign each image to a split
|
indices = random.choices([0, 1, 2], weights=weights, k=n) # assign each image to a split
|
||||||
|
|
||||||
txt = ['autosplit_train.txt', 'autosplit_val.txt', 'autosplit_test.txt'] # 3 txt files
|
txt = ['autosplit_train.txt', 'autosplit_val.txt', 'autosplit_test.txt'] # 3 txt files
|
||||||
[(path.parent / x).unlink(missing_ok=True) for x in txt] # remove existing
|
for x in txt:
|
||||||
|
if (path.parent / x).exists():
|
||||||
|
(path.parent / x).unlink() # remove existing
|
||||||
|
|
||||||
print(f'Autosplitting images from {path}' + ', using *.txt labeled images only' * annotated_only)
|
print(f'Autosplitting images from {path}' + ', using *.txt labeled images only' * annotated_only)
|
||||||
for i, img in tqdm(zip(indices, files), total=n):
|
for i, img in tqdm(zip(indices, files), total=n):
|
||||||
|
|
|
@ -44,12 +44,14 @@ def safe_download(file, url, url2=None, min_bytes=1E0, error_msg=''):
|
||||||
torch.hub.download_url_to_file(url, str(file), progress=LOGGER.level <= logging.INFO)
|
torch.hub.download_url_to_file(url, str(file), progress=LOGGER.level <= logging.INFO)
|
||||||
assert file.exists() and file.stat().st_size > min_bytes, assert_msg # check
|
assert file.exists() and file.stat().st_size > min_bytes, assert_msg # check
|
||||||
except Exception as e: # url2
|
except Exception as e: # url2
|
||||||
file.unlink(missing_ok=True) # remove partial downloads
|
if file.exists():
|
||||||
|
file.unlink() # remove partial downloads
|
||||||
LOGGER.info(f'ERROR: {e}\nRe-attempting {url2 or url} to {file}...')
|
LOGGER.info(f'ERROR: {e}\nRe-attempting {url2 or url} to {file}...')
|
||||||
os.system(f"curl -# -L '{url2 or url}' -o '{file}' --retry 3 -C -") # curl download, retry and resume on fail
|
os.system(f"curl -# -L '{url2 or url}' -o '{file}' --retry 3 -C -") # curl download, retry and resume on fail
|
||||||
finally:
|
finally:
|
||||||
if not file.exists() or file.stat().st_size < min_bytes: # check
|
if not file.exists() or file.stat().st_size < min_bytes: # check
|
||||||
file.unlink(missing_ok=True) # remove partial downloads
|
if file.exists():
|
||||||
|
file.unlink() # remove partial downloads
|
||||||
LOGGER.info(f"ERROR: {assert_msg}\n{error_msg}")
|
LOGGER.info(f"ERROR: {assert_msg}\n{error_msg}")
|
||||||
LOGGER.info('')
|
LOGGER.info('')
|
||||||
|
|
||||||
|
@ -112,8 +114,10 @@ def gdrive_download(id='16TiPfZj7htmTyhntwcZyEEAejOUxuT6m', file='tmp.zip'):
|
||||||
file = Path(file)
|
file = Path(file)
|
||||||
cookie = Path('cookie') # gdrive cookie
|
cookie = Path('cookie') # gdrive cookie
|
||||||
print(f'Downloading https://drive.google.com/uc?export=download&id={id} as {file}... ', end='')
|
print(f'Downloading https://drive.google.com/uc?export=download&id={id} as {file}... ', end='')
|
||||||
file.unlink(missing_ok=True) # remove existing file
|
if file.exists():
|
||||||
cookie.unlink(missing_ok=True) # remove existing cookie
|
file.unlink() # remove existing file
|
||||||
|
if cookie.exists():
|
||||||
|
cookie.unlink() # remove existing cookie
|
||||||
|
|
||||||
# Attempt file download
|
# Attempt file download
|
||||||
out = "NUL" if platform.system() == "Windows" else "/dev/null"
|
out = "NUL" if platform.system() == "Windows" else "/dev/null"
|
||||||
|
@ -123,11 +127,13 @@ def gdrive_download(id='16TiPfZj7htmTyhntwcZyEEAejOUxuT6m', file='tmp.zip'):
|
||||||
else: # small file
|
else: # small file
|
||||||
s = f'curl -s -L -o {file} "drive.google.com/uc?export=download&id={id}"'
|
s = f'curl -s -L -o {file} "drive.google.com/uc?export=download&id={id}"'
|
||||||
r = os.system(s) # execute, capture return
|
r = os.system(s) # execute, capture return
|
||||||
cookie.unlink(missing_ok=True) # remove existing cookie
|
if cookie.exists():
|
||||||
|
cookie.unlink() # remove existing cookie
|
||||||
|
|
||||||
# Error check
|
# Error check
|
||||||
if r != 0:
|
if r != 0:
|
||||||
file.unlink(missing_ok=True) # remove partial
|
if file.exists():
|
||||||
|
file.unlink() # remove partial
|
||||||
print('Download error ') # raise Exception('Download error')
|
print('Download error ') # raise Exception('Download error')
|
||||||
return r
|
return r
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue