我正在加载一个 csv 文件,您可以看到下面的链接以及我收到的错误输出。我不明白为什么会发生这个错误。任何帮助表示赞赏。
def url_store():
run_urlcrazy()
url_file = open('url_csv')
csv_reader = csv.reader(url_file)
cursor = db.cursor()
for row in csv_reader:
cursor.execute("INSERT INTO scanresults(typotype,squatdomain, ip, id, domaincontact, mx, originaldomain, ipcontact) \
VALUES (%s, %s, %s, %s, %s, %s, %s, %s)", str(row))
db.commit()
cursor.close()
最佳答案
查询需要 8 个参数(由 (%s, %s, %s, %s, %s, %s, %s, %s)
表示),但是您只提供一个单个参数,即str(row)
。
如果您确定行
包含8个字符串值,则可以使用
cursor.execute("INSERT INTO scanresults(typotype,squatdomain, ip, id, domaincontact, mx, originaldomain, ipcontact) \
VALUES (%s, %s, %s, %s, %s, %s, %s, %s)", *row)
或者直接选择
cursor.execute("INSERT INTO scanresults(typotype,squatdomain, ip, id, domaincontact, mx, originaldomain, ipcontact) \
VALUES (%s, %s, %s, %s, %s, %s, %s, %s)", (row[0], row[1], row[2], row[3], row[4], row[5], row[6], row[7]))
关于python - 不会将csv数据存储到mysql表中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45202229/