在学习scrapy 把字典里的数据写入sqlite时遇到的问题:
问题代码如下:
def saveData(self,item):
conn = sqlite3.connect('easy.db')
cursor = conn.cursor()
# sql ="insert into item(主题,采购单位) values (?,?)"
sql = "insert into item values (?,?)"
cursor.execute(sql, (item["title"], item["college"]),)
conn.commit()
cursor.close()
conn.close()
上述代码报错:
table item has 3 columns but 2 values were supplied
原因:
表格名称Item后面要加(),格式是
sql ="insert into item(column,column) values (?,?)"
解决方法
sql ="insert into item(主题,采购单位) values (?,?)"