我正在尝试使用 FTPlib 从 FTP 服务器下载文件,但我不断收到以下错误消息.我尝试了在 SO 上找到的几种方法,即编辑 etc/host 文件并在本地主机 IP 后添加计算机名称,但这也不起作用.
I'm trying to download a file from an FTP server using FTPlib but i keep getting the error below. I tried several methods found on SO namely editing the etc/host file and adding the computer name after the local host IP but that doesnt work either.
非常感谢任何帮助.(运行mac,python 3.7,macOS Mojave 10.14.2)
Any help is much appreciated. (running a mac, python 3.7, macOS Mojave 10.14.2)
我正在尝试运行的代码:
from ftplib import FTP
ftp = FTP('myftpurl')
错误:
Traceback (most recent call last):
文件",第 1 行,在init 中的文件/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ftplib.py",第 117 行self.connect(主机)文件/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ftplib.py",第 152 行,在连接中source_address=self.source_address)文件/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/socket.py",第 707 行,在 create_connection对于 getaddrinfo(host, port, 0, SOCK_STREAM) 中的 res:文件/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/socket.py",第 748 行,在 getaddrinfo对于 _socket.getaddrinfo 中的 res(主机、端口、家庭、类型、原型、标志):socket.gaierror: [Errno 8] nodename or servname provided, or not known
File "", line 1, in File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ftplib.py", line 117, in init self.connect(host) File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/ftplib.py", line 152, in connect source_address=self.source_address) File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/socket.py", line 707, in create_connection for res in getaddrinfo(host, port, 0, SOCK_STREAM): File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/socket.py", line 748, in getaddrinfo for res in _socket.getaddrinfo(host, port, family, type, proto, flags): socket.gaierror: [Errno 8] nodename nor servname provided, or not known
ftp = FTP('myftpurl')
不清楚 myftpurl 在您的特定代码中实际包含什么.
但鉴于它的名称,我假设您已经尝试过类似 ftp://example.com 的方法.仅作为 明确记录 FTP(...) 不需要 URL,而是主机名或 IP,即 FTP('example.com') 而不是 FTP('ftp://example.com')代码>.
It is not clear what myftpurl actually contains in your specific code.
But given its name I assume that you've tried something like ftp://example.com. Only, as clearly documented FTP(...) does not expect a URL but instead a hostname or IP, i.e. FTP('example.com') and not FTP('ftp://example.com').
给定一个 URL,就像你可能做的那样,将导致将该 URL 视为主机名,即查找主机名 ftp://example.com.由于这样的主机不存在,您会收到错误消息.
Given a URL like you probably do will result in treating that URL as hostname, i.e. doing a lookup for the hostname ftp://example.com. Since such a host does not exist you get an error.
这篇关于FTPLIB 错误 socket.gaierror: [Errno 8] nodename nor servname provided, or not known的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!
为什么我不能插入 Python 列表?Why I cannot make an insert to Python list?(为什么我不能插入 Python 列表?)
在 DataFrame 的开头(最左端)插入一列Insert a column at the beginning (leftmost end) of a DataFrame(在 DataFrame 的开头(最左端)插入一列)
Python psycopg2 没有插入到 postgresql 表中Python psycopg2 not inserting into postgresql table(Python psycopg2 没有插入到 postgresql 表中)
list extend() 索引,不仅将列表元素插入到末尾list extend() to index, inserting list elements not only to the end(list extend() 索引,不仅将列表元素插入到末尾)
如何使用 list.insert 将 Python 中的元素添加到列表How to add element in Python to the end of list using list.insert?(如何使用 list.insert 将 Python 中的元素添加到列表末尾?)
TypeError:“浮动"对象不可下标TypeError: #39;float#39; object is not subscriptable(TypeError:“浮动对象不可下标)