首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在python中获取ftp服务器的ip地址

在python中获取ftp服务器的ip地址
EN

Stack Overflow用户
提问于 2015-07-09 02:39:08
回答 3查看 1.3K关注 0票数 1

我使用ftplib连接到一个数据库,如下所示。

代码语言:javascript
复制
import ftplib
sitename = 'ftp.ensembl.org'
connection = ftplib.FTP(sitename)
connection.login()

但是因为我想使用带有参数user@host的ssh,所以我认为我需要服务器的ip地址,而不是ftp站点的url。是否有任何代码来查找和存储的ip地址的ftp服务器在ftplib

EN

回答 3

Stack Overflow用户

发布于 2015-07-09 03:02:50

票数 1
EN

Stack Overflow用户

发布于 2015-07-09 04:35:09

主机名ftp.ensembl.org只是IP地址的名称。

在绝大多数TCP应用程序/库中,您可以互换使用主机名和IP地址(HTTP/web浏览器是显着的区别)。

因此,对于任何Python SSH库,您也可以使用主机名,就像在ftplib中使用主机名一样。

也就是说,要查找IP地址,例如可以使用ping命令:

代码语言:javascript
复制
C:\>ping ftp.ensembl.org

Pinging ftp-ensembl-ext.sanger.ac.uk [193.62.203.85] with 32 bytes of data:
Reply from 193.62.203.85: bytes=32 time=51ms TTL=48
Reply from 193.62.203.85: bytes=32 time=51ms TTL=48

所以你的FTP服务器的IP地址是193.62.203.85

或者用谷歌搜索"DNS lookup"

为了解决您的实际问题:要使用Python中的SSH,您不需要IP地址,而需要SSH库。

在Python最常用的SSH库中,只有Paramiko

票数 0
EN

Stack Overflow用户

发布于 2015-07-09 05:05:08

在Python中,您可以使用socket库轻松地将主机名转换为IP地址:

代码语言:javascript
复制
>>> import socket
>>> socket.gethostbyname('www.microsoft.com')
'184.85.88.154'
>>> socket.gethostbyname('ftp.ensembl.org')
'193.62.203.85'

但是,我怀疑您不需要这样做,因为ssh和其他实用程序可以互换地接受主机名或IP地址。如果它们只需要IP地址,则通常会记录为IP地址。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31301028

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档