用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - python代码库

读取文件夹下面所有的xls文件 写入数据库

2022-08-30 作者: Python自学举报

[python]代码库

import os,xlrd,json
import ksycopg2

#读取文件夹下面所有的xls文件
def listdir(path): #传入根目录
    for file in os.listdir(path):
        file_path = os.path.join(path, file) #获取绝对路径
        if os.path.isdir(file_path): #如果还是文件夹,就继续迭代本函数
            listdir(file_path)
        elif os.path.splitext(file_path)[1] == '.xls' or os.path.splitext(file_path)[1] == '.xlsx': #判断文件是否是Excel文件
            file_list.append(file_path)
    return file_list #返回Excel文件路径列表

#将读取的每一个xls文件插入数据库
def parse(file_path):
    conn = ksycopg2.connect(database="Test", user="SYSTEM", password="SYSTEM", host="127.0.0.1", port="54323")
    cur = conn.cursor()   
    file = xlrd.open_workbook(file_path)
    sheets = file.sheet_names()
    for i in sheets:
        sheet = file.sheet_by_name(i)
        row_num = sheet.nrows #获取行数
        for i in range(1, row_num):
            l = sheet.row_values(i)
            Snum = l[0]
            Score = l[1]
            sqlNonQuery = "insert into ql_ry (username,sfz) values ('%s',%d)" % (Snum, Score)
            print(sqlNonQuery)
            cur.execute(sqlNonQuery)
        conn.commit()

if __name__ == '__main__':
    file_list = []
    f = open('portal.txt', 'w', encoding='utf-8')
    path = r'C:\Users\mlinux\Desktop\xlss'
    #path = input("请输入文件夹路径: ")
    file_list = listdir(path)
    for file_name in file_list:
        print('start translating',file_name)
        #读取Excel所有的sheet到字典
        parse(file_name)


网友评论    (发表评论)


发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。


扫码下载

加载中,请稍后...

输入口令后可复制整站源码

加载中,请稍后...