Presupposto che ti connetti già a PostgreSQL e che tu abbia già la tabella in PostgreSQL. Oppure visita questo link https://wiki.postgresql.org/wiki/Psycopg2_Tutorial
import psycopg2
try:
conn = psycopg2.connect("host='localhost' dbname='template1' user='dbuser' password='dbpass'")
except:
print "I am unable to connect to the database"
Innanzitutto, apri il file .csv.
>>> import csv
>>> with open('names.csv') as csvfile:
... reader = csv.DictReader(csvfile)
... for row in reader:
... print(row['first_name'], row['last_name'])
...
Questo è un esempio tratto da https://docs.python.org/2/library/csv. html Modifica la riga di stampa con inserto in PostgreSQL.
>>> import psycopg2
>>> cur.execute("INSERT INTO test (num, data) VALUES (%s, %s)",
... (100, "abc'def"))
Puoi cambiare (100, "abc'def") con (variable1, variable2) Vedi questo link http://initd.org/psycopg/docs/usage.html O nel codice di esempio completo:
>>> import csv
>>> import psycopg2
>>> with open('names.csv') as csvfile:
... reader = csv.DictReader(csvfile)
... for row in reader:
... cur.execute("INSERT INTO test (num, data) VALUES (%s, %s)", (variable1, variable2))
...
Spero che questo ti aiuterà...