我正在尝试从 csv 获取值并将它们放入数据库中,我设法做到这一点没有很多麻烦。
但是我知道需要写回 csv,所以下次我运行脚本时,它只会将值从 csv 文件中的标记处输入到数据库中。
请注意,系统上的 CSV 文件每 24 小时自动刷新一次,因此请记住 csv 中可能没有标记。所以如果没有找到标记,基本上将所有值都放入数据库中。
我计划每 30 分钟运行一次此脚本,因此 csv 文件中可能有 48 个标记,甚至每次都删除标记并将其移到文件中?
我一直在删除文件,然后在脚本中重新创建一个文件,以便每个脚本运行新文件,但这会以某种方式破坏系统,所以这不是一个好的选择。
希望各位大神帮忙。。
谢谢你
蟒蛇代码:
import csv
import MySQLdb
mydb = MySQLdb.connect(host='localhost',
user='root',
passwd='******',
db='kestrel_keep')
cursor = mydb.cursor()
csv_data = csv.reader(file('data_csv.log'))
for row in csv_data:
cursor.execute('INSERT INTO `heating` VALUES ( %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s,)',
row)
#close the connection to the database.
mydb.commit()
cursor.close()
import os
print "Done"
我的 CSV 文件格式:
2013-02-21,21:42:00,-1.0,45.8,27.6,17.3,14.1,22.3,21.1,1,1,2,2
2013-02-21,21:48:00,-1.0,45.8,27.5,17.3,13.9,22.3,20.9,1,1,2,2