我希望每天晚上从我们的FTP下载一个csv文件。当我尝试运行脚本说“socket.gaierror:[Errno 11001] getaddrinfo failed”时,我收到错误。这是我正在使用的代码:
import ftplib
ftp = ftplib.FTP('http://192.168.0.00', 'username', 'password')
files = ftp.dir('/')
ftp.cwd("/")
filematch = '*.csv'
target_dir = '/path/to/csv/file'
import os
for filename in ftp.nlst(filematch):
target_file_name = os.path.join(target_dir,os.path.basename(filename))
with open(target_file_name,'wb') as fhandle:
ftp.retrbinary('RETR %s' %filename, fhandle.write)
不确定我的代码到底出了什么问题。它可能是目录格式或FTP格式吗?
谢谢!
答案 0 :(得分:1)
签名ftplib.FTP()
是
ftplib.FTP([host[, user[, passwd[, acct[, timeout]]]]])
因此,您需要提供主机名作为第一个参数而不是 URL 。
成功
ftp = ftplib.FTP('192.168.0.00', 'username', 'password')
P.S。是192.168.0.00
真是00
作为最后一个八位字节吗?