如何使用Python将空格分隔的文本文件插入mysql?

我的文本文件如下所示:


10May2013   3.1   http://ncbi.org p.sojae_aafeatureimp    p.sojae_aafeatureimp


10May2013   3.2   http://ncbi.org   p.sojae_aasequenceimp   p.sojae_aasequenceimp


10May2013   3.3   http://ncbi.org   p.sojae_blatalignment   p.sojae_blatalignment

如何解析这些单独的行并将其插入到数据库中?


数据库结构:(日期,版本,URL,名称,描述)


我必须使用Python将文本文件中的值插入mysql。到目前为止,我的脚本是这样的:


import MySQLdb, csv, sys

with open('externaldatabase.txt') as textfile:

  csvreader = csv.reader(textfile)

  csvdata = []

  for row in csvreader:

  csvdata.append(row)


conn = MySQLdb.connect (host = "localhost",user = "username", passwd = "password",db = "database_name")

c = conn.cursor()


for row in csvdata:

# Insert a row of data


c.execute("INSERT INTO externaldatabase (release_date, version, download_url, name, description) VALUES ('%s', '%s', '%s', '%s', '%s')" % (row))


conn.commit()

c.close()

但它让我出错:


Traceback (most recent call last):


File "csv1.py", line 16, in <module>


c.execute("INSERT INTO externaldatabase (release_date, version, download_url, name, description) VALUES ('%s', '%s', '%s', '%s', '%s')" % (row))


TypeError: not enough arguments for format string


Cats萌萌
浏览 256回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python