从FTP服务器下载csv文件

时间:2018-02-14 17:12:11

标签: python-3.x

我希望每天晚上从我们的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格式吗?

谢谢!

1 个答案:

答案 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作为最后一个八位字节吗?