Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import pandas as pd #libreria para trabajar hojas de calulo (xlsx, excel)
- import glob
- import datetime
- from datetime import date
- import calendar, locale
- import pytz
- import tzlocal
- #def escribirArchivos(DFtiendas):
- # try:
- # gruposDF = DFtiendas.groupby(['FECHA INICIO CMR','FECHA FIN CMR'])
- # for k, grupo in gruposDF:
- # fechaInicio = str(grupo['FECHA INICIO CMR'].unique()[0]).replace("T00:00:00.000000000","")
- # fechaFin = str(grupo['FECHA FIN CMR'].unique()[0]).replace("T00:00:00.000000000","")
- # #tienda =str(grupo['TIENDAS'].unique()[0])
- # nombre = fechaInicio + " " + fechaFin + ".csv"
- # nombre2 = fechaInicio + " " + fechaFin + ".txt"
- # path_spf = 'C:/RPA_Pricing/6.Bot Peru/SPF/Archivos a Cargar/spf_'
- # path_spf_txt = 'C:/RPA_Pricing/6.Bot Peru/SPF/archivo txt/spf_'
- # skuPrecioDFtxt = pd.DataFrame(list(zip(grupo['SKU papa'])),
- # columns =['SKU papa'])
- #skuPrecioDF = pd.DataFrame(list(zip(grupo['SKU papa'], grupo['Nuevo PRECIO CMR'])), #Genero un dataframe para escribirlo en un csv
- # columns =['SKU papa', 'Nuevo PRECIO CMR'])
- #skuPrecioDF.to_csv(path_spf+nombre, header=False, index=False, sep=',', encoding='utf-8')
- #skuPrecioDFtxt.to_csv(path_spf_txt+nombre2, header=False, index=False, sep='\t', encoding='utf-8')
- #return True
- #except:
- #return False
- def crearArchivos_srx(data_srx):
- locale.setlocale(locale.LC_ALL, 'es-ES')
- formato_dia= datetime.datetime.today().strftime('%A') # Dia de la semana de carga
- formato_dia = (formato_dia[0:3])
- formato_dia = 'jue'
- print(formato_dia)
- #try:
- gruposDF = data_srx.groupby(['ALL','DESDE','HASTA','Dia de Carga','TIPO DE CAMBIO']) #Agrupados por carga
- for k, grupo in gruposDF:
- fechaInicio = str(grupo['DESDE'].unique()[0]).replace("00:00:00","")
- fechaFin = str(grupo['HASTA'].unique()[0]).replace("00:00:00","")
- tienda =str(grupo['ALL'].unique()[0])
- dia_carga =str(grupo['Dia de Carga'].unique()[0])
- tipo_cambio= str(grupo['TIPO DE CAMBIO'].unique()[0])
- print (grupo)
- if tipo_cambio == 'OFERTA' or tipo_cambio == 'EXTERMINAR - OFERTA' :
- if dia_carga == formato_dia:
- nombre = fechaInicio+""+fechaFin+""+tienda+" "+tipo_cambio+".txt"
- path_spf = 'C:/RPA_Pricing/7.Bot Argentina/Cargas_SRX/srx_'
- skuPrecioDF = pd.DataFrame(list(zip(grupo['SKU'], grupo['NUEVA OFERTA'])), #Genero un dataframe para escribirlo en un txt
- columns =['SKU', 'NUEVA OFERTA'])
- skuPrecioDF.to_csv(path_spf+nombre, header=False, index=False, sep='\t', encoding='utf-8')
- elif tipo_cambio == 'CAMBIO NORMAL' or tipo_cambio == 'CAMBIO NORMAL - EXTERMINAR':
- if dia_carga == formato_dia:
- nombre = fechaInicio+""+fechaFin+""+tienda+" "+tipo_cambio+".txt"
- path_spf = 'C:/RPA_Pricing/7.Bot Argentina/Carga_SRX_normal/srx_'
- skuPrecioDF = pd.DataFrame(list(zip(grupo['SKU'], grupo['NUEVO NORMAL'])), #Genero un dataframe para escribirlo en un txt
- columns =['SKU', 'NUEVO NORMAL'])
- skuPrecioDF.to_csv(path_spf+nombre, header=False, index=False, sep='\t', encoding='utf-8')
- elif tipo_cambio == 'CAMBIO NORMAL - OFERTA':
- if dia_carga == formato_dia:
- nombre = fechaInicio+""+fechaFin+""+tienda+" "+tipo_cambio+".txt"
- path_spf = 'C:/RPA_Pricing/7.Bot Argentina/Cargas_SRX/srx_'
- path_spf_normal = 'C:/RPA_Pricing/7.Bot Argentina/Carga_SRX_normal/srx_'
- skuPrecioDF = pd.DataFrame(list(zip(grupo['SKU'], grupo['NUEVO NORMAL'])), #Genero un dataframe para escribirlo en un txt
- columns =['SKU', 'NUEVO NORMAL'])
- skuPrecioDF_OF = pd.DataFrame(list(zip(grupo['SKU'], grupo['NUEVA OFERTA'])), #Genero un dataframe para escribirlo en un txt
- columns =['SKU', 'NUEVA OFERTA'])
- skuPrecioDF_OF.to_csv(path_spf+nombre, header=False, index=False, sep='\t', encoding='utf-8')
- skuPrecioDF.to_csv(path_spf_normal+nombre, header=False, index=False, sep='\t', encoding='utf-8')
- elif tipo_cambio == 'TURBO':
- if dia_carga == formato_dia:
- nombre = fechaInicio+""+fechaFin+""+tienda+" "+tipo_cambio+".txt"
- path_spf = 'C:/RPA_Pricing/7.Bot Argentina/Cargas_Turbo/srx_'
- skuPrecioDF = pd.DataFrame(list(zip(grupo['SKU'], grupo['NUEVA OFERTA'])), #Genero un dataframe para escribirlo en un txt
- columns =['SKU', 'NUEVA OFERTA'])
- skuPrecioDF.to_csv(path_spf+nombre, header=False, index=False, sep='\t', encoding='utf-8')
- elif tipo_cambio == 'CAMBIO NORMAL - EXTERMINAR - OFERTA':
- if dia_carga == formato_dia:
- nombre = fechaInicio+""+fechaFin+""+tienda+" "+tipo_cambio+".txt"
- path_spf = 'C:/RPA_Pricing/7.Bot Argentina/Cargas_SRX/srx_'
- path_spf_normal = 'C:/RPA_Pricing/7.Bot Argentina/Carga_SRX_normal/srx_'
- skuPrecioDF = pd.DataFrame(list(zip(grupo['SKU'], grupo['NUEVO NORMAL'])), #Genero un dataframe para escribirlo en un txt
- columns =['SKU', 'NUEVO NORMAL'])
- skuPrecioDF_OF = pd.DataFrame(list(zip(grupo['SKU'], grupo['NUEVA OFERTA'])), #Genero un dataframe para escribirlo en un txt
- columns =['SKU', 'NUEVA OFERTA'])
- skuPrecioDF_OF.to_csv(path_spf+nombre, header=False, index=False, sep='\t', encoding='utf-8')
- skuPrecioDF.to_csv(path_spf_normal+nombre, header=False, index=False, sep='\t', encoding='utf-8')
- #return True
- #except:
- #return False
- def lista_exterminar(data_srx):
- locale.setlocale(locale.LC_ALL, 'es-ES')
- formato_dia= datetime.datetime.today().strftime('%A') # Dia de la semana de carga
- formato_dia = (formato_dia[0:3])
- formato_dia = 'jue'
- print(formato_dia)
- gruposDF = data_srx.groupby(['Dia de Carga','TIPO DE CAMBIO', 'DESDE'])
- #print(fechaFinOferta)
- for k, grupo in gruposDF:
- dia_carga =str(grupo['Dia de Carga'].unique()[0])
- tipo_cambio= str(grupo['TIPO DE CAMBIO'].unique()[0])
- fechaInicio = str(grupo['DESDE'].unique()[0]).replace("00:00:00","")
- if formato_dia == dia_carga:
- if tipo_cambio == 'EXTERMINAR - OFERTA' or tipo_cambio == 'CAMBIO NORMAL - EXTERMINAR' or tipo_cambio=='CAMBIO NORMAL - EXTERMINAR - OFERTA' or tipo_cambio == 'EXTERMINAR':
- path_exter= 'C:/RPA_Pricing/7.Bot Argentina/Exterminar/'
- nombre = fechaInicio+"_"+tipo_cambio+'.xlsx'
- skuPrecioDF = pd.DataFrame(list(zip(grupo['SKU'])), #Genero un dataframe para escribirlo en un txt
- columns =['SKU'])
- skuPrecioDF.to_excel(path_exter+nombre, header=False, index=False, )
- def main():
- #DFtiendas = pd.read_excel (r'C:\RPA_Pricing\7.Bot Argentina\executePythonArchivosArgentina\Cambio de precios.xlsx".xlsx') # leo el archivo
- all_files = glob.glob('C:/RPA_Pricing/7.Bot Argentina/executePythonArchivosArgentina/\\Cambio de precios*.xlsx')
- for filename in all_files:
- data_srx = pd.read_excel (filename,sheet_name='Precios', index_col=None, header=3,
- usecols=["ALL", "DESDE", "HASTA",'SKU', 'NUEVA OFERTA','Dia de Carga','TIPO DE CAMBIO','NUEVO NORMAL'],
- converters={"ALL":str, "DESDE":str, "HASTA":str,'SKU':str, 'NUEVA OFERTA':str,'Dia de Carga':str,'TIPO DE CAMBIO':str,'NUEVO NORMAL':str})
- data_srx.sort_values(by=["DESDE", "HASTA"])
- #respuesta = escribirArchivos(DFtiendas)
- repuesta2 = crearArchivos_srx(data_srx)
- respuesta_ext=lista_exterminar(data_srx)
- #if(respuesta):
- #print("archivos creados correctamente")
- #else:
- #print("problema al crear los archivos")
- if(repuesta2):
- print("archivos SRX creados correctamente ")
- else:
- print("problema al crear los archivos SRX")
- if __name__ == '__main__':
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement