特殊字符错误。python和win32com

特殊字符错误。python和win32com,python,django,pandas,pywin32,Python,Django,Pandas,Pywin32,我希望你过得愉快。 事实上,我正在用django开发一个模块,从我的服务器中提取一个包含数据的xlsx文件,它可以处理一些文件。 在这个过程中,我从我的服务器请求数据,根据我的需要进行过滤,并将其放入pandas数据框中,然后使用Win32com将其插入xlsx模板中,并将其导出到本地驱动程序中。昨天我尝试时,它成功了!!!。 但当我今天试图从我的网络应用程序中提取内容时。我有一个意外的惊喜,一个异常错误: /extract/extract\u文件处出现com\u错误 (-2147352567,

我希望你过得愉快。 事实上,我正在用django开发一个模块,从我的服务器中提取一个包含数据的xlsx文件,它可以处理一些文件。 在这个过程中,我从我的服务器请求数据,根据我的需要进行过滤,并将其放入pandas数据框中,然后使用Win32com将其插入xlsx模板中,并将其导出到本地驱动程序中。昨天我尝试时,它成功了!!!。 但当我今天试图从我的网络应用程序中提取内容时。我有一个意外的惊喜,一个异常错误:

/extract/extract\u文件处出现com\u错误 (-2147352567,‘发生异常’,(0,无,无,无,0,-2146827284),无)

所以我对这个错误和我的数据库做了研究,看看昨天创建的文件和这个文件之间有什么问题。 事实上,新文件似乎有很多带有特殊字符的文本,但并不是几个字符造成了问题(该文件的数据超过8000行)。 这就是如何将数据放入我的模板中

    df2 = pd.DataFrame(dict_datas_c2)
    df1 = pd.DataFrame(dict_datas_c1)
    df3 = pd.DataFrame(dict_datas_c3)

    # convertion de l'objet en date

    df1['Task End Date'] = pd.to_datetime(df1['Task End Date'])
    df1['Previous Inspection Date'] = pd.to_datetime(df1['Previous Inspection Date'])

    # conversion de date en str

    df1['Task End Date'] = df1['Task End Date'].dt.strftime('%Y-%m-%d')
    df1['Previous Inspection Date'] = df1['Previous Inspection Date'].dt.strftime('%Y-%m-%d')

    df1['Previous Inspection Date'] = df1['Previous Inspection Date'].replace('NaT', '')

    ########################## CREATION PERSONALIZED PATH AND PATH FOR OUTPUT FROM TEMPLATE##########################

    date_now = datetime.datetime.now()
    date_str = date_now.strftime("%d%m%Y" + "_" + "%H" + "%M")

    path = './SUPPORT DATA FILES/'
    filename = 'ED_' + ed + '_' + ed_name + '_' + date_str + '.xlsx'

    extract_filename = path +  filename 
    template_file = #another path

    copyfile(template_file, extract_filename)
    ########################## INSERTING DATAS INTO EXCELFILE ########################################################

    pythoncom.CoInitialize()

    # Open excel to access to template

    excel = win32.GetObject(None, 'Excel.Application')

    # def workbook

    wb = excel.Workbooks.Open(extract_filename)

    # each sheet

    first_sheet_info=wb.Worksheets("NOTES")
    second_sheet_C1=wb.Worksheets("C1. Scheduled Maintenance Tasks")
    third_sheet_C2= wb.Worksheets("C2. Findings&Corrective Actions")

    # inserting datas into each sheet

    first_sheet_info.Range(first_sheet_info.Cells(2,1),# Cell to start the "paste"
                first_sheet_info.Cells(1+len(df3.index)-1,
                1+len(df3.columns)-1)
            ).Value = df3.values

    second_sheet_C1.Range(second_sheet_C1.Cells(4,1),# Cell to start the "paste"
                second_sheet_C1.Cells(4+len(df1.index)-1,
                1+len(df1.columns)-1)
            ).Value = df1.values

    third_sheet_C2.Range(third_sheet_C2.Cells(4,1),# Cell to start the "paste"
            third_sheet_C2.Cells(4+len(df2.index)-1,
                    1+len(df2.columns)-1)
            ).Value = df2.values

    # excel close and save

    wb.Close(SaveChanges=1)
    excel.Quit()

    name_of_file = str(filename)
    list_files.append(name_of_file)
因此,我正在处理的工作表是“第三张工作表”,其中一些列有一个特殊的字符:

这是使用win32com.client将数据帧插入模板的代码

如果你们对如何帮助我或其他解决方案在不使用win32com的情况下将df放入模板有任何想法,请告诉我!!
PS:我已经尝试使用openpyxl,但它不起作用。

您是否尝试在上打开问题?不,我没有,我现在就开始。但是你有什么想法吗?你有没有试着在上打开一个问题?没有,我没有,我现在就做。但是你有什么想法吗?