1- import sys
21import zipfile
32from pathlib import Path
43from shutil import make_archive
54from typing import List
65
76from file_automation .utils .exception .exceptions import ZIPGetWrongFileException
7+ from file_automation .utils .logging .loggin_instance import file_automation_logger
88
99
1010def zip_dir (dir_we_want_to_zip : str , zip_name : str ):
1111 make_archive (root_dir = dir_we_want_to_zip , base_name = zip_name , format = "zip" )
12+ file_automation_logger .info (f"Dir to zip: { dir_we_want_to_zip } , zip file name: { zip_name } " )
1213
1314
1415def zip_file (zip_file_path : str , file : [str , List [str ]]):
1516 current_zip = zipfile .ZipFile (zip_file_path , mode = "w" )
1617 if isinstance (file , str ):
1718 file_name = Path (file )
1819 current_zip .write (file , file_name .name )
20+ file_automation_logger .info (
21+ f"Write file: { file_name } to zip: { current_zip } "
22+ )
1923 else :
2024 if isinstance (file , list ):
2125 for writeable in file :
2226 file_name = Path (writeable )
2327 current_zip .write (writeable , file_name .name )
28+ file_automation_logger .info (
29+ f"Write file: { writeable } to zip: { current_zip } "
30+ )
2431 else :
25- print (repr (ZIPGetWrongFileException ), file = sys .stderr )
32+ file_automation_logger .error (
33+ repr (ZIPGetWrongFileException ))
2634 current_zip .close ()
2735
2836
2937def read_zip_file (zip_file_path : str , file_name : str , password : [str , None ] = None ):
3038 current_zip = zipfile .ZipFile (zip_file_path , mode = "r" )
31- data = None
3239 with current_zip .open (name = file_name , mode = "r" , pwd = password , force_zip64 = True ) as read_file :
3340 data = read_file .read ()
3441 current_zip .close ()
42+ file_automation_logger .info (
43+ f"Read zip file: { zip_file_path } "
44+ )
3545 return data
3646
3747
3848def unzip_file (zip_file_path : str , extract_member , extract_path : [str , None ] = None , password : [str , None ] = None ):
3949 current_zip = zipfile .ZipFile (zip_file_path , mode = "r" )
4050 current_zip .extract (member = extract_member , path = extract_path , pwd = password )
51+ file_automation_logger .info (
52+ f"Unzip file: { zip_file_path } , "
53+ f"extract member: { extract_member } , "
54+ f"extract path: { extract_path } , "
55+ f"password: { password } "
56+ )
4157 current_zip .close ()
4258
4359
@@ -46,24 +62,41 @@ def unzip_all(
4662 extract_path : [str , None ] = None , password : [str , None ] = None ):
4763 current_zip = zipfile .ZipFile (zip_file_path , mode = "r" )
4864 current_zip .extractall (members = extract_member , path = extract_path , pwd = password )
65+ file_automation_logger .info (
66+ f"Unzip file: { zip_file_path } , "
67+ f"extract member: { extract_member } , "
68+ f"extract path: { extract_path } , "
69+ f"password: { password } "
70+ )
4971 current_zip .close ()
5072
5173
5274def zip_info (zip_file_path : str ):
5375 current_zip = zipfile .ZipFile (zip_file_path , mode = "r" )
5476 info_list = current_zip .infolist ()
5577 current_zip .close ()
78+ file_automation_logger .info (
79+ f"Show zip info: { zip_file_path } "
80+ )
5681 return info_list
5782
5883
5984def zip_file_info (zip_file_path : str ):
6085 current_zip = zipfile .ZipFile (zip_file_path , mode = "r" )
6186 name_list = current_zip .namelist ()
6287 current_zip .close ()
88+ file_automation_logger .info (
89+ f"Show zip file info: { zip_file_path } "
90+ )
6391 return name_list
6492
6593
6694def set_zip_password (zip_file_path : str , password : bytes ):
6795 current_zip = zipfile .ZipFile (zip_file_path )
6896 current_zip .setpassword (pwd = password )
6997 current_zip .close ()
98+ file_automation_logger .info (
99+ f"Set zip file password, "
100+ f"zip file: { zip_file_path } , "
101+ f"zup password: { password } "
102+ )
0 commit comments