First add for tested ListDownloader
This commit is contained in:
		
							
								
								
									
										33
									
								
								bin/downloadlist.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								bin/downloadlist.py
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,33 @@
 | 
			
		||||
#!/usr/bin/python3
 | 
			
		||||
 | 
			
		||||
import listdownloader
 | 
			
		||||
import argparse
 | 
			
		||||
from itertools import islice
 | 
			
		||||
 | 
			
		||||
if __name__ == '__main__':
 | 
			
		||||
 | 
			
		||||
    parser = argparse.ArgumentParser()
 | 
			
		||||
    parser.add_argument("-f", "--file", type=str, dest="filepath", default="",
 | 
			
		||||
                        help="Text file that contains links to download, line by line", required=True)
 | 
			
		||||
    parser.add_argument("-d", "--destination", type=str, dest="dest", default="",
 | 
			
		||||
                        help="Destination path to download the files", required=True)
 | 
			
		||||
    parser.add_argument("-t", "--threads", type=int, dest="threads", default=0,
 | 
			
		||||
                        help="Number of threads/processes to be used")
 | 
			
		||||
    parser.add_argument("-l", "--lines", type=int, dest="numlines", default=0,
 | 
			
		||||
                        help="Number of lines to be read as a chunk. 0=Read the whole file.")
 | 
			
		||||
    args = parser.parse_args()
 | 
			
		||||
 | 
			
		||||
    if args.numlines <= 0: # load the whole file
 | 
			
		||||
        with open(args.filepath) as f:
 | 
			
		||||
            file_lines = f.readlines()
 | 
			
		||||
            listdownloader.download_files(file_lines, args.dest, args.threads)
 | 
			
		||||
 | 
			
		||||
    else: # load parts of the file
 | 
			
		||||
        with open(args.filepath, 'r') as infile:
 | 
			
		||||
            while True:
 | 
			
		||||
                file_lines = list(islice(infile, args.numlines))
 | 
			
		||||
                if len(file_lines) > 0:
 | 
			
		||||
                    print(file_lines)
 | 
			
		||||
                    listdownloader.download_files(file_lines, args.dest, args.threads)
 | 
			
		||||
                else:
 | 
			
		||||
                    break
 | 
			
		||||
		Reference in New Issue
	
	Block a user