I was able to get pass the syntax error but the expected result didn't show.
Expected Result:
Old file is supposed to be renamed Grid_Support_....._2019-12-30
New File is supposed to be named Grid_Support_.....with no date on it
New file is supposed to be inside Folder directory but for some reason it moved to Archived Directory
Old file is moved to the archived directory
I have attached a copy of the excel file in case you wanted to test it on your computer.
The date on it is 12-30-2019 so you can actually use it. If it was 12-31-2019 then the results that
you wanted to see won't show.
Code:
import requests
import os.path
import sys
import shutil
import pandas as pd
from datetime import datetime
import time
def getFile():
url = "https://www.gosolarcalifornia.ca.gov/equipment/documents/Grid_Support_Inverter_List_Full_Data.xlsm"
content = requests.get(url)
date = datetime.date(datetime.now())
directory = "C:\\Users\\slee5\\Desktop\\Folder"
archivedDirectory = "C:\\Users\\slee5\\Desktop\\Folder\\ArchivedFolder"
fileName = "Grid_Support_Inverter_List_Full_Data"
extension = ".csv"
path = fileName + extension
print ("Files will be saved in the following directory: "+directory+"\n")
print ("Old Files with the same name will be archived in the following directory: "+archivedDirectory+"\n")
print ("NOTICE: File will be converted to .csv file...")
if os.path.isdir(directory):
if(os.path.isdir(archivedDirectory)):
pass
else:
os.mkdir(archivedDirectory)
print ("SUCCESS: Directory was found.")
counter = 0
if (os.path.exists(directory+"\\"+fileName+extension)):
counter += 1
while (os.path.exists(archivedDirectory+"\\"+fileName+"_%s_%s"%(str(date), str(counter))+extension)):
counter += 1
if counter > 0:
print ("File: "+fileName+" already exists in directory,moving old file to Archived Folder. ")
shutil.move(directory+"\\"+fileName+extension, archivedDirectory+"\\"+fileName+"_%s"%(str(date))+extension)
path = archivedDirectory+"\\"+fileName+"_%s"%(str(date))+extension
date1 = time.ctime(os.path.getmtime(path))
os.rename(path,archivedDirectory+"\\"+fileName+"_%s"%(str(date1).replace(":"," "))+extension)
with open(os.path.join(directory, path), 'wb') as f:
f.write(content.content)
deleteRows(directory, path)
print("Done.")
else:
print("ERROR: Directory is not found.")
sys.exit()
def deleteRows(directory, path):
newFile = pd.read_excel(os.path.join(directory,path))
newFile = newFile.drop(range(14), axis = 0)
newFile.to_csv(os.path.join(directory, path), encoding='utf8', header=False, index=False)
def main():
getFile()
if __name__ == "__main__":
main()
Actual Result: