从Mysql下载csv数据的Python代码不起作用

从Mysql下载csv数据的Python代码不起作用,python,mysql,csv,export-to-csv,Python,Mysql,Csv,Export To Csv,我有一些代码可以从Mysql获取数据并作为csv下载。 无法理解为什么会出现此错误: error: csv_writer.writerows([cursor]) _csv.Error: sequence expected 我的代码: import time import ConfigParser import sys import wget import pymysql.cursors import pymysql import re import csv configParser =

我有一些代码可以从Mysql获取数据并作为csv下载。 无法理解为什么会出现此错误:

error:    csv_writer.writerows([cursor])
_csv.Error: sequence expected
我的代码:

import time
import ConfigParser
import sys
import wget
import pymysql.cursors
import pymysql
import re
import csv

configParser = ConfigParser.RawConfigParser()
configFilePath = r'../credentials.cfg'
configParser.read(configFilePath)

User = configParser.get('your-config', 'user')
Pswd = configParser.get('your-config','pswd')
Host = configParser.get('your-config','hostdps')
db = pymysql.connect(host=Host, user=User, password=Pswd, db='Apis2', charset='utf8mb4', cursorclass=pymysql.cursors.DictCursor,local_infile=True)


cursor = db.cursor()
SELECT_TABLE = """select * from """+DB_NAME+"."+STATES_INPUT_TBL
cursor.execute(SELECT_TABLE)

with open("out.csv", "wb") as csv_file:              # Python 2 version
csv_writer = csv.writer(csv_file)
  if cursor:
      csv_writer.writerow([i[0] for i in cursor.description]) # write headers
      csv_writer.writerows([cursor])
print open('out.csv').read()

我怀疑
csv.writer
db.cursor
一无所知。您可能需要自己遍历游标,为每个数据库行调用
writerow
。data=cursor.fetchall()为每行提供“{u'metro_name':u'Phoenix-Mesa-Glendale,AZ',u'cb_ps':38060}”,并在每个值之前打印列索引名。有没有办法去掉这个?