Du lindar varje enskilt argument i en tuple
; gör inte det. Det vill säga gör så här istället:
dbcur.execute(
"""INSERT INTO scripting (URL, Title, Content, Month, Date, Year, Time, TimeZone)
VALUES ("%s", "%s", "%s", "%s", "%s", "%s", "%s", "%s")""",
(URL[i], Title[i], Content[i], Month[i], Date[i], Year[i], Time1[i], TimeZone[i]))
Du behöver bara slå in alla ersatta värden i ett tupel, inga undantag.
Jag förstår varför du är förvirrad ("URL:url. Jag ställer in detta med tuple och det är bra." ):med DBAPI en singel värdet måste också lindas in i 1-tupel i följande exempel), men det är fortfarande samma regel som gäller här:
dbcur.execute('INSERT INTO scripting (URL) VALUES (%s)', (URL,))
Nu ersätter vi bara URL
, men vi slår ändå in "alla", t.ex. det enda argumentet, i en tupel.