def searchbySKU(sku): # Obtengo las claves api_keys = wc_gsbase_api.getApiKeys("secret_keys.json") # Crea conexion API con WooCommerce if bool(api_keys): wcapi = API( url="https://camanwi.com", # Your store URL consumer_key=api_keys['WOOCOMMERCE_KEY'], # Your consumer key consumer_secret=api_keys[ 'WOOCOMMERCE_SECRET'], # Your consumer secret wp_api=True, # Enable the WP REST API integration version="wc/v3", # WooCommerce WP REST API version, timeout=15) else: print("No Keys Available") exit() # Consigue lista de todos los productos (puede que sean solo los 10 ultimos por la pagination) my_json = (wcapi.get("products?per_page=50").json()) # Busca el producto con el sku requerido my_products = {} encontrado = False for attribute in my_json: if attribute['sku'] == sku: print('Producto Padre ID: ', attribute['id'], 'SKU: ', sku) # Busco las variaciones del producto. my_variations_id = (attribute['variations']) print('Productos hijos ID: ', attribute['variations']) encontrado = True my_variations_sku = [] try: # Extraigo los detalles de cada variacion a traves de su ID. for id in my_variations_id: my_product = (wcapi.get("products/" + str(id)).json()) my_products.update({id: my_product}) my_variations_sku.append(my_product["sku"]) resultado = ('Productos hijos SKU: ', my_variations_sku) # Si encuentra el producto lo guarda en un json. except UnboundLocalError as e: print(e) pass if encontrado: with open('Retrieved Products Temp.json', 'w') as json_file: json.dump(my_products, json_file) return resultado # Si no lo encuentra else: resultado = ("No se han encontrado productos hijos para el producto " + sku) return resultado
def searchImageID(): # Obtengo las claves api_keys = wc_gsbase_api.getApiKeys("secret_keys.json") # Crea conexion API con WooCommerce wpapi= wc_gsbase_api.getApiParametersWP(api_keys) # Consigue lista de todos los productos (puede que sean solo los 10 ultimos por la pagination) my_json=(wpapi.get("media").json()) print(json.dumps(my_json, indent=4, sort_keys=True))
def postImageandRetrieveID(): # Obtengo las claves api_keys = wc_gsbase_api.getApiKeys("secret_keys.json") # Crea conexion API con WooCommerce wpapi= wc_gsbase_api.getApiParametersWP(api_keys) # Consigue lista de todos los productos (puede que sean solo los 10 ultimos por la pagination) data = { "src": imagenes_src +"105986" + "_010_1.png", } my_json=(wpapi.post("media",data).json()) print(json.dumps(my_json, indent=4, sort_keys=True))
start=time.time() # Parametros de Importacion. numero_almacen = "24" imagenes_src ="https://camanwi.com/imagesResources/" directorio_input_json = "C:/Users/alvar/Documents/ferrer/Integracion GsBase 1.1/Ficheros GsBase/" directorio_output_json = "C:/Users/alvar/Documents/ferrer/Integracion GsBase 1.1/Ficheros GsBase/Por Articulo/" directorio_input_imagenes = "C:/Users/alvar/Documents/ferrer/Fotos/Product Creation/Raw Images/" directorio_output_imagenes = "C:/Users/alvar/Documents/ferrer/Fotos/Product Creation/Formatted Images/" failed_img_attemps=[] # Obtengo credenciales API. secrets_filename = '../../secret_keys.json' api_keys = wc_gsbase_api.getApiKeys(secrets_filename) # Crea conexion API con WooCommerce wcapi = wc_gsbase_api.getApiParameters(api_keys) # Leo los JSON de GsBase del directorio input json included_extensions = ['json'] file_names = [fn for fn in os.listdir(directorio_input_json) if any(fn.endswith(ext) for ext in included_extensions)] #REGISTRO DE FALLOS Y EXITOS succesful_attemps={} failed_attemps={} # Genero Recursos de Imagenes
from woocommerce import API import json import time import wc_gsbase_api import os start = time.time() # Parametros de Importacion. numero_almacen = "99" directorio_input_json = "C:/Users/alvar/Documents/ferrer/Interactivo_16_07/update/" # Obtengo credenciales API. api_keys = wc_gsbase_api.getApiKeys('../../secret_keys.json') # Crea conexion API con WooCommerce wcapi = wc_gsbase_api.getApiParameters(api_keys) #Obtengo lista de productos my_products_json = wc_gsbase_api.getProductList(wcapi, 50) # Leo los JSON de GsBase con los datos de los productos a actualizar for test_filename in os.listdir(directorio_input_json): with open(directorio_input_json + test_filename, 'r') as f: my_template = json.loads(f.read())
x=25 #text display mytext = tk.Text(window, height=10, width=50) mytext.grid(column=0,row=6,sticky="nsew") #scrollbar scrollb = tk.Scrollbar(window, command=mytext.yview) scrollb.grid(column=1, row=6, sticky='nsew') mytext['yscrollcommand'] = scrollb.set #funciones api_keys = wc_gsbase_api.getApiKeys("secret_keys.json") wcapi = wc_gsbase_api.getApiParameters(api_keys) old_orders = wc_api_checkForNewOrdersv2.getOldOrders(wcapi) def checkOrders(): pedidos = wc_api_checkForNewOrdersv2.getNewOrders(old_orders, wcapi) mytext.insert(tk.END, pedidos) threading.Timer(x, checkOrders).start() checkOrders() window.mainloop()