从目录在 SQL 中以 Pythonic 方式上传 CSV 文件,路径错误

标签 python mysql

目前,我的脚本将 .txt 文件从 FTP 站点下载到本地目录(在检查目录是否已包含该文件后),然后将每个文件转换为(单独的).csv。我需要将数据移植到 mysql 数据库中。

这是我遇到问题的部分:运行脚本的第二部分 (ballotreader),当路径不是动态的(即 R:\path\filename)时,文件中的行被导入到 SQL 中,脚本有效并且填充了 sql 表。当路径是动态的时,(即 'R:\path\'+filename)什么都不会填充。有什么建议么?

for filename in filenames:
    local_filename = os.path.join('R:\\path', filename)
    if os.path.isfile(local_filename) is False:
        print 'New file found.'
        file = open(local_filename, 'wb')
        ftp.retrbinary("RETR " + filename, file.write, 8*1024)
        file.close()
        print 'Downloaded '+filename+' file'
        txt_file = r""+filename
        csv_file = r""+filename+".csv" 
        in_txt = csv.reader(open(txt_file, "rb" ),delimiter = '|')
        outcsv = csv.writer(open(csv_file,'wb'))
        outcsv.writerows(in_txt)

        with open("R:\\path"+csv_file,'rb') as csv_input:
            ballotreader = csv.reader(csv_input, delimiter=',',quotechar ='|') 
            for row in ballotreader:  
                cursor = db.cursor()  
                if row[1] > 0:  

最佳答案

问题可能出在您构造路径的方式上。尝试使用 os.path.join:

import os

path = os.path.join("R:\\path",csv_file)
with open(path,'rb') as csv_input:
...

关于从目录在 SQL 中以 Pythonic 方式上传 CSV 文件,路径错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13078507/

相关文章:

python - 如何优化 SQLite 中的多个嵌套 SELECT(使用 Python)?

python - Jupyter notebook 无法识别 Gensim 库

php - 在elasticsearch中是否可以只使用过滤器而不使用文本搜索

mysql - 如何对两个 SELECT 查询进行排序并将它们组合起来

python - XSL转换,请求子节点数据

python - 当条件满足时,While 循环不会终止

php - Opencart 自定义管理区域 -> 查询仅显示表的第一条记录

mysql - 更新列具有特定值的整个表记录

mysql View 性能与额外列的比较

python - 如何在 matplotlib 中制作空白子图?