当我在下面运行脚本时收到此错误,我能够连接到Instagram API并打印nr个关注者: mysql.connector.errors.InterfaceError:执行操作失败;无法处理参数
followers = str(followers)
followersdata = [followers]
conn = mysql.connector.connect(user='root', password='XXX',
host='127.0.0.1',
database='InstagramStore')
cursor = conn.cursor()
q = """INSERT INTO InstagramFollowers (followers) VALUES (%s)"""
cursor.executemany(q, followersdata)
conn.commit()
答案 0 :(得分:1)
您可以在一个执行中插入多个值 列出执行命令。 问题出在查询中。
首先,您应该通过以下方式设置查询格式
:query = """INSERT INTO InstagramFollowers {0} VALUES ({1})""".format(followers, values)
然后您应该在列表中提供值
cursor.execute(query, list)
答案 1 :(得分:0)
您的查询格式错误。
我不知道第二个%s
在您的查询中代表什么,所以我只是使用变量values
来保持它的位置。
它看起来应该更像:
Python <2.6
q = """INSERT INTO InstagramFollowers (%s) VALUES (%s)""" (followers, values)
Python> 2.6
q = """INSERT INTO InstagramFollowers {0} VALUES {1}""".format(followers, values)
Python> 3.6
q = f"""INSERT INTO InstagramFollowers {followers} VALUES {values}"""
答案 2 :(得分:0)
您可以使用将列表转换为json并将json写入表中。
INSERT INTO InstagramFollowers(followers) VALUES(json.dumps(followersdata))
这应该有效。