python读取csv文件存入mysql

# -*- coding:utf-8 -*-
import pandas as pd
import MySQLdb
import sys
reload(sys)
sys.setdefaultencoding('utf8')
# 从csv文件中读取数据,分别为:X列表和对应的Y列表
def get_data(file_name):
    # 1. 用pandas读取csv
    data = pd.read_csv(file_name)
    # print (data)
    for factory_library_name,exchange_name,types,address,zip_code,contacts,phone,fax,e_mail,shipping_station_or_port,maxs,delivery_speed,benchmark_library,bwd,longitude,latitude,memo in zip(data['factory_library_name'],data['exchange_name'],data['types'],data['address'],data['zip_code'],data['contacts'],data['phone'],data['fax'],data['e_mail'],data['shipping_station_or_port'],data['maxs'],data['delivery_speed'],data['benchmark_library'],data['bwd'],data['longitude'],data['latitude'],data['memo']):
        dataList = [factory_library_name,exchange_name,types,address,zip_code,contacts,phone,fax,e_mail,shipping_station_or_port,maxs,delivery_speed,benchmark_library,bwd,longitude,latitude,memo]
        print (dataList)
        # 打开数据库连接
        conn = MySQLdb.Connect(
            host='。。。',
            port=3306,
            user='dac',
            passwd='dac',
            db='cmp_dac',  # 数据库名称
            charset='utf8'
        )
        # 使用cursor()方法获取操作游标
        cursor = conn.cursor()
        try:
            insertsql = "INSERT INTO t_delivery_factory_library(factory_library_name,exchange_name,types,address,zip_code,contacts,phone,fax,e_mail,shipping_station_or_port,maxs,delivery_speed,benchmark_library,bwd,longitude,latitude,memo) VALUES(%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)"
            cursor.execute(insertsql,dataList)
            conn.commit()
            print ('okok')
        except Exception as e:
            print e
            conn.rollback()
        cursor.close()
        # 关闭数据库连接
        conn.close()


def main():
    # 1. 读取数据 如果是别的格式的文件 可以转换成csv格式
    get_data('C:/pcdata/zz.csv')




if __name__ == '__main__':
    main()


你可能感兴趣的:(python)