日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python ftp timeout_python - FTP文件传输期间Python数据通道超时 - 堆栈内存溢出

發布時間:2025/3/11 python 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python ftp timeout_python - FTP文件传输期间Python数据通道超时 - 堆栈内存溢出 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我正在嘗試使用Python的ftplib傳輸文件。

def ftps_put_file(host, user, password, ftp_file_path, processed_file):

try:

context = ssl.create_default_context(ssl.Purpose.SERVER_AUTH, cafile='C:\\PATH\\TO\\SECURE.crt')

with FTP_TLS(host, user=user, passwd=password, context=context, timeout=10) as connection, open(processed_file, 'rb') as read_file:

connection.set_debuglevel(2)

connection.prot_p()

connection.cwd(ftp_file_path)

connection.storbinary(f"STOR {processed_file.name}", read_file)

except Exception as e:

print('Error occured in transporter.ftps_put_file: ' + str(e))

我可以在文件傳輸期間連接到FTP主機,沒有任何問題。 連接超時開始并關閉連接,然后該連接的日志顯示為“ 425數據通道由于不滿足最低帶寬要求而超時”。 我使用了其他FTP客戶端(Filezilla,WinSCP),并且兩者都可以連接到主機。

連接超時設置為2分鐘的日志

*cmd* 'PBSZ 0'

*put* 'PBSZ 0\r\n'

*get* '200 PBSZ command successful.\n'

*resp* '200 PBSZ command successful.'

*cmd* 'PROT P'

*put* 'PROT P\r\n'

*get* '200 PROT command successful.\n'

*resp* '200 PROT command successful.'

*cmd* 'CWD /'

*put* 'CWD /\r\n'

*get* '250 CWD command successful.\n'

*resp* '250 CWD command successful.'

*cmd* 'TYPE I'

*put* 'TYPE I\r\n'

*get* '200 Type set to I.\n'

*resp* '200 Type set to I.'

*cmd* 'PASV'

*put* 'PASV\r\n'

*get* '227 Entering Passive Mode (204,58,62,196,19,199).\n'

*resp* '227 Entering Passive Mode (204,58,62,196,19,199).'

*cmd* 'STOR text.txt'

*put* 'STOR text.txt\r\n'

*get* '125 Data connection already open; Transfer starting.\n'

*resp* '125 Data connection already open; Transfer starting.'

*cmd* 'QUIT'

*put* 'QUIT\r\n'

*get* '425 Data channel timed out due to not meeting the minimum bandwidth requirement.\n'

*resp* '425 Data channel timed out due to not meeting the minimum bandwidth requirement.'

連接超時設置為60秒或更短的日志此序列的順序似乎很奇怪,因為連接退出后會給出226 Transfer Completed 。 它不應該說明轉移完成然后退出嗎?

*cmd* 'PBSZ 0'

*put* 'PBSZ 0\r\n'

*get* '200 PBSZ command successful.\n'

*resp* '200 PBSZ command successful.'

*cmd* 'PROT P'

*put* 'PROT P\r\n'

*get* '200 PROT command successful.\n'

*resp* '200 PROT command successful.'

*cmd* 'CWD /'

*put* 'CWD /\r\n'

*get* '250 CWD command successful.\n'

*resp* '250 CWD command successful.'

*cmd* 'TYPE I'

*put* 'TYPE I\r\n'

*get* '200 Type set to I.\n'

*resp* '200 Type set to I.'

*cmd* 'PASV'

*put* 'PASV\r\n'

*get* '227 Entering Passive Mode (204,58,62,196,20,46).\n'

*resp* '227 Entering Passive Mode (204,58,62,196,20,46).'

*cmd* 'STOR text.txt'

*put* 'STOR text.txt\r\n'

*get* '125 Data connection already open; Transfer starting.\n'

*resp* '125 Data connection already open; Transfer starting.'

*cmd* 'QUIT'

*put* 'QUIT\r\n'

*get* '226 Transfer complete.\n'

*resp* '226 Transfer complete.'

總結

以上是生活随笔為你收集整理的python ftp timeout_python - FTP文件传输期间Python数据通道超时 - 堆栈内存溢出的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。