我正在研究PostgreSQL和psycopg2。尝试
获取每10分钟更新一次的feed数据
并将此提要内容保存在PostgreSQL中数据库。我的目标是找回
然后从那个表格打印这些数据。
但由于表上的插入操作,每次运行脚本时,数据库中也会存储重复的数据。在
为了解决这个问题,我对表Locations-musiq1中的列location_title设置了主键约束,我打算在其中存储我的提要数据。但是面对错误。在
这是我的代码:import psycopg2
import sys
import feedparser
import codecs
import psycopg2.extensions
# Parsing data from Geofeed location feeds
data = feedparser.parse("some URL")
psycopg2.extensions.register_type(psycopg2.extensions.UNICODE)
try:
conn=psycopg2.connect("dbname='name' user='postgres' host='localhost' password='abcds'")
conn.set_client_encoding('UNICODE')
except:
print "I am unable to connect to the database, exiting."
sys.exit()
cur=conn.cursor()
for i in range(len(data['entries'])):
cur.execute("INSERT INTO locations_musiq1(location, location_title) VALUES (%s, %s)", (data.entries[i].title,data.entries[i].summary))
conn.commit()
cur.execute("SELECT * FROM locations_musiq1;")
cur.fetchone()
for row in cur:
print ' '.join(row[1:])
cur.close()
conn.close()
将“locations_musiq1”表列“location_title”更改为主键后,我的错误是:
^{pr2}$
有谁能想出办法解决这个问题吗?。。提前谢谢。。在