使用 Python 访问 FTP 服务器失败并出现 "getaddrinfo" 错误

Accessing FTP server with Python fails with "getaddrinfo" error

我正在尝试访问开放式 DLP 测试 FTP 服务器作为练习。我不断收到 getaddrinfo 错误,但我不确定哪里出错了。我在 Windows 10 上使用 Python 2,并且已经检查过我没有使用代理。

代码:

from ftplib import FTP
ftp = FTP('ftp://ftp.dlptest.com/')
...

错误:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python27\lib\ftplib.py", line 120, in __init__
    self.connect(host)
  File "C:\Python27\lib\ftplib.py", line 135, in connect
    self.sock = socket.create_connection((self.host, self.port), self.timeout)
  File "C:\Python27\lib\socket.py", line 553, in create_connection
    for res in getaddrinfo(host, port, 0, SOCK_STREAM):
socket.gaierror: [Errno 11001] getaddrinfo failed

感谢任何帮助!

使用

ftp = FTP('ftp.dlptest.com')

相反。

FTP constructor 的第一个参数是 host主机名IP 地址 – 不是URL.