valores valor una lista limpiar elementos diccionario dentro convertir como agregar python mysql mysql-python

valor - ¿Cómo puedo usar ejecutemany para insertar en MySQL una lista de diccionarios en Python?



limpiar diccionario python (1)

itemBank = [] for row in rows: itemBank.append(( tempRow2[''Item_Name''], tempRow1[''Item_Price''], tempRow3[''Item_In_Stock''], tempRow4[''Item_Max''], getTimeExtra )) #append data q = """ insert ignore into TABLE1 ( Item_Name, Item_Price, Item_In_Stock, Item_Max, Observation_Date ) values (%s,%s,%s,%s,%s) """ try: x.executemany(q, itemBank) conn.commit() except: conn.rollback()

Espero que te ayude

Actualmente estoy usando MySQL y Python para raspar datos de la web. Específicamente, estoy raspando los datos de la tabla e insertándolos en mi base de datos. Mi solución actual funciona, pero creo que es extremadamente ineficiente y es muy probable que bloquee mi base de datos si no reescribo el código. Esto es lo que actualmente uso (código parcial):

itemBank = [] for row in rows: itemBank.append((tempRow2,tempRow1,tempRow3,tempRow4)) #append data #itemBank List of dictionaries representing data from each row of the table. i.e. (''Item_Name'':"Tomatoes",''Item_Price'':"10",''Item_In_Stock'':"10",''Item_Max'':"30") for item in itemBank: tempDict1 = item[0] tempDict2 = item[1] tempDict3 = item[2] tempDict4 = item[3] q = """ INSERT IGNORE INTO TABLE1 ( Item_Name, Item_Price, Item_In_Stock, Item_Max, Observation_Date ) VALUES ( "{0}", "{1}", "{2}", "{3}", "{4}" ) """.format(tempDict1[''Item_Name''],tempDict2[''Item_Price''],tempDict3[''Item_In_Stock''], tempDict4[''Item_Max''],getTimeExtra) try: x.execute(q) conn.commit() except: conn.rollback()

Ejecutar cada fila de la tabla es engorroso. He intentado usar executemany , pero parece que no puedo encontrar la manera de acceder a los valores de los diccionarios correctamente. Entonces, ¿cómo puedo usar la executemany aquí para insertar en la base de datos dada la estructura de mis datos?