@@ -349,6 +349,11 @@ def export(self, event: Optional[Event] = None) -> None:
349349
350350 messagebox .showinfo (title = "Export Successful" ,
351351 message = f"Data has been exported to NSE-OCA-{ self .index } -{ self .expiry_date } .csv." )
352+ except PermissionError as err :
353+ print (err , "12" )
354+ messagebox .showerror (title = "Export Failed" ,
355+ message = f"Failed to access NSE-OCA-{ self .index } -{ self .expiry_date } .csv.\n "
356+ f"Permission Denied. Try closing any apps using it." )
352357 except Exception as err :
353358 print (err , "8" )
354359 messagebox .showerror (title = "Export Failed" ,
@@ -362,12 +367,25 @@ def export_row(self, values: Optional[List[Union[str, float, numpy.float64]]]) -
362367 with open (f"NSE-OCA-{ self .index } -{ self .expiry_date } .csv" , "a" , newline = "" ) as row :
363368 data_writer : csv .writer = csv .writer (row )
364369 data_writer .writerow (self .csv_headers )
370+ except PermissionError as err :
371+ print (err , "13" )
372+ messagebox .showerror (title = "Export Failed" ,
373+ message = f"Failed to access NSE-OCA-{ self .index } -{ self .expiry_date } .csv.\n "
374+ f"Permission Denied. Try closing any apps using it." )
365375 except Exception as err :
366376 print (err , "9" )
367377 else :
368- with open (f"NSE-OCA-{ self .index } -{ self .expiry_date } .csv" , "a" , newline = "" ) as row :
369- data_writer : csv .writer = csv .writer (row )
370- data_writer .writerow (values )
378+ try :
379+ with open (f"NSE-OCA-{ self .index } -{ self .expiry_date } .csv" , "a" , newline = "" ) as row :
380+ data_writer : csv .writer = csv .writer (row )
381+ data_writer .writerow (values )
382+ except PermissionError as err :
383+ print (err , "14" )
384+ messagebox .showerror (title = "Export Failed" ,
385+ message = f"Failed to access NSE-OCA-{ self .index } -{ self .expiry_date } .csv.\n "
386+ f"Permission Denied. Try closing any apps using it." )
387+ except Exception as err :
388+ print (err , "15" )
371389
372390 # noinspection PyUnusedLocal
373391 def toggle_live_export (self , event : Optional [Event ] = None ) -> None :
@@ -1218,6 +1236,8 @@ def main(self) -> None:
12181236 messagebox .showerror (title = "Export Failed" ,
12191237 message = f"Failed to access NSE-OCA-{ self .index } -{ self .expiry_date } -Full.csv.\n "
12201238 f"Permission Denied. Try closing any apps using it." )
1239+ except Exception as err :
1240+ print (err , "16" )
12211241
12221242 if self .first_run :
12231243 if self .update :
0 commit comments