Один и тот же скрипт работает по разному на разных версиях Windows

Term

Новичок
Пользователь
Авг 4, 2023
1
0
1
Добрый день всем, столкнулся с проблемой, что один и тот же скрипт работает по разному на разных виндах код простой процедура отправки файла на ФТП
Python:
from ftplib import FTP
import os
from configparser import ConfigParser
 
def SendToFTP(file_name):
    ReadIni = ConfigParser()
    ReadIni.read('D:\\PythonScripts\\SendToFTP\\my.ini')
    #прочитаем настройки FTP
    FtpAddr = ReadIni.get('FTP','HOST')
    FtpPort = ReadIni.get('FTP','PORT')
    FtpUser = ReadIni.get('FTP','USERNAME')
    FtpPass = ReadIni.get('FTP','PASSWORD')
    FtpDir  = ReadIni.get('FTP','FTP_DIR')
    ftp = FTP(FtpAddr)
    ftp.port = FtpPort
    ftp.login(FtpUser, FtpPass)
    ftp.cwd(FtpDir)
    ftp.storbinary('STOR '+os.path.basename(file_name), open(file_name, "rb"))
    ftp.quit()
 
file_name = 'D:\\PythonScripts\\SendToFTP\\BrackN.zip'
SendToFTP(file_name)
отправляется архив
на Windows 7 всё ок, файл отправляется без проблем, на Win2019 получаю ошибку которую привёл ниже
возможно разница в версиях библиотек, подскажите как поправить?
ну и если неправильно отправляю, тоже подскажите))
Спасибо
получаю вот такую ошибку

Traceback (most recent call last):
File “E:\Python_Scripts\LoadBrack\SendFtp.py”, line 30, in <module>
SendToFTP('E:\\Python_Scripts\\LoadBrack\\BrackN.zip')
File “E:\Python_Scripts\LoadBrack\SendFtp.py”, line 26, in SendToFTP
ftp.storbinary('STOR 0000000_Z999.BRK', open(file_name, “rb”))
File “C:\Program Files\Python311\Lib\ftplib.py”, line 509, in storbinary
return self.voidresp()
File “C:\Program Files\Python311\Lib\ftplib.py”, line 259, in voidresp
resp = self.getresp()
File “C:\Program Files\Python311\Lib\ftplib.py”, line 244, in getresp
resp = self.getmultiline()
File “C:\Program Files\Python311\Lib\ftplib.py”, line 230, in getmultiline
line = self.getline()
File “C:\Program Files\Python311\Lib\ftplib.py”, line 212, in getline
line = self.file.readline(self.maxline + 1)
File “<frozen codecs>”, line 322, in decode
UnicodeDecodeError: ‘utf-8’ codec can't decode byte 0xa0 in position 24: invalid start byte
 

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 661
474
83
файл скрипта перекодируйте в ютф 8, можно сделать с помощью Notepad++
 

Форум IT Специалистов