在下面的代码中,如何给文件名作为从excel(数据类型为list
)中获取的值,而不是进行url.split("/")[-1]
def download_files(url):
file = url.split("/")[-1]
file_name = ("{}.pdf".format(file))
try :
fullfilename = os.path.join('/home/jmi3840/downloads/downloads', file_name)
response = urlretrieve(url,fullfilename)
except: print ('Opps!')
if __name__ == "__main__":
path = '/home/jmi3840/downloads/PIRTestFile.xlsx'
URLS = []
FILES = []
wb = xlrd.open_workbook(path)
sheet = wb.sheet_by_index(0)
print ('Fetching urls ...')
for i in tqdm(range(sheet.nrows)):
URLS.append(sheet.cell_value(i, 0))
print ('Fetching filenames ...')
for j in tqdm(range(sheet.nrows)):
FILES.append(sheet.cell_value(j, 1))
print ('Downloading ...')
results = ThreadPool(6).imap_unordered(download_files,URLS)
for r in results:
print('')
print("--- %s seconds ---" % (time.time() - start_time))