Effiziente MySQL-Einfügung von Wörterbuchlisten mithilfe vonexecutemany in Python
Problem:
Beim Scraping Um Daten aus Webtabellen in eine MySQL-Datenbank zu übertragen, wird ein ineffizienter Ansatz verwendet, bei dem einzelne Zeilen eingefügt werden. Das Ziel besteht darin, diesen Prozess mit „executemany“ zu optimieren.
Lösung:
Die Methode „executemany“ ermöglicht das gleichzeitige Einfügen mehrerer Datenzeilen in eine Datenbanktabelle. In diesem Fall sind die Daten als Liste von Wörterbüchern strukturiert, die jeweils eine Zeile der Tabelle darstellen.
Anstatt wie im Originalcode gezeigt einzeln auf die Werte der Wörterbücher zuzugreifen, sollten die Daten angehängt werden zu einer Liste im folgenden Format:
itemBank.append(( tempRow2['Item_Name'], tempRow1['Item_Price'], tempRow3['Item_In_Stock'], tempRow4['Item_Max'], getTimeExtra )) #append data
Die Methode „executemany“ kann dann mit der folgenden Abfrage verwendet werden:
q = """ insert ignore into TABLE1 ( Item_Name, Item_Price, Item_In_Stock, Item_Max, Observation_Date ) values (%s,%s,%s,%s,%s) """
Das Ersetzen der einzelnen Zeileneinfügungen durch die Methode „executemany“ wird eine deutliche Verbesserung bringen die Effizienz des Datenbankeinfügungsprozesses.
Das obige ist der detaillierte Inhalt vonWie kann ich das MySQL-Einfügen von Wörterbuchlisten mithilfe von „executemany“ in Python optimieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!