python导入csv文件数据并处理数据存入数据库``’
初学python,安装python
引入pymysql:Python解决ModuleNotFoundError: No module named 'pymysql'的问题
1、用管理员身份运行CMD.exe,然后查看python的安装路径
2、切换到python路径,在Scripts目录下执行pip install pymysql命令,由于我的已经安装过,所以显示的是pymysql的version。
3、如果要删除pymysql,在Scripts目录下执行pip uninstall pymysql命令,看清楚,是在Scripts目录下。输入y,回车即可。
产品表数据处理
import csv # csv
import codecs # csv读取
import re # 正则替换
import json # json数据
import pymysql # mysql
from pymysql.converters import escape_string #转义方法转义后再进行保存
#pymysql.install_as_MySQLdb() # 返回字典类型的数据 列表数据不引入
#import MySQLdb.cursors # 返回字典类型的数据 列表数据不引入
class DoMysql:
#初始化
def __init__(self):
#创建连接
self.conn = pymysql.Connect(
host = 'host',
port = port,
user = 'user',
password = 'password',
db = 'db',
charset = 'utf8',
cursorclass = pymysql.cursors.DictCursor #以字典的形式返回数据
)
#获取游标
self.cursor = self.conn.cursor()
#返回单条数据
def fetchOne(self,sql):
self.cursor.execute(sql)
return self.cursor.fetchone()
#返回多条数据
def fetchAll(self,sql):
self.cursor.execute(sql)
return self.cursor.fetchall()
#插入一条数据
def insert_one(self,sql):
result = self.cursor.execute(sql)
self.conn.commit()
return result
#插入多条数据
def insert_many(self,sql,datas):
result = self.cursor.executemany(sql,datas)
self.conn.commit()
return result
#更新数据
def update(self,sql):
result = self.cursor.execute(sql)
self.conn.commit()
return result
#清空数据
def truncateTable(self,sql):
result = self.cursor.execute(sql)
self.conn.commit()
return result
#关闭连接
def close(self):
self.cursor.close()
self.conn.close()
""" #参数分别为:ip,用户名,密码,库名
db = MySQLdb.connect(host='host',user='user',password='password',db='db',charset='utf8',cursorclass = MySQLdb.cursors.DictCursor)
con = db.cursor()"""
def getOneRow(rowDat):
#return rowDat['CoverPicture']
img = rowDat['CoverPicture'].split('?') # 图片以?分割
Picture = rowDat['PicturesJson'].split('Picture":"') # 多图片以?分割
imgs = ''
i = 0
for pic in Picture:
pic = pic.split('?')
# 去除存在Thumbnail字段的图片
if re.search('.*?"Thumbnail"', str(pic[0])) == None:
if i == 0:
imgs = imgs+pic[0]
else:
imgs = imgs+','+pic[0]
i+=1
"""dats = {
'serial': dat['GoodsNo'],
'designation': dat['Title'],
'abstract': dat['ZhaiYao'],
'aurify': dat['GoldTypeName'],
'min_wgt': dat['MinGoldWeight'],
'max_wgt': dat['MaxGoldWeight'],
'category': dat['CategoryName'],
'gram_wage': dat['SaleFeePrice'],
'gram_add_wage': dat['SaleOtherFeePrice'],
'img': img[0],
'imgs': imgs,
'supplier': 2,
'status': 1,
'shelf': 0,
'sell': 1,
}"""
indats = (
rowDat['



最低0.47元/天 解锁文章

5575

被折叠的 条评论
为什么被折叠?



