当前位置:主页 > python教程 > getservbyport和getservbyname函数用法

Python中getservbyport和getservbyname函数的用法大全

发布:2023-03-05 10:00:01 59


给寻找编程代码教程的朋友们精选了相关的编程文章,网友邵溪澈根据主题投稿了本篇教程内容,涉及到getservbyport和getservbyname函数用法、python、getservbyport和getservbyname函数、getservbyport和getservbyname函数用法相关内容,已被505网友关注,内容中涉及的知识点可以在下方直接下载获取。

getservbyport和getservbyname函数用法

在Python的网络编程中,getservbyport()函数和getservbyname()函数是socket模块中的两个函数,因此在使用这两个函数时,需要导入socket模块。

1 getservbyname()函数

getservbyname()函数的作用是通过指定服务的名称获取该服务对应的端口号。

相关链接1 服务与端口号,一台拥有IP地址的主机可以提供许多服务,这些服务就是通过端口号来进行区分的,即一个端口号对应一个服务。

1.1 语法

getservbyname()函数的语法如下所示:

socket.getservbyname(servicename[, protocolname])

其中,参数servicename即为要查找的服务名;参数protocolname是一个可选的参数,表示该服务所基于的协议名,该参数可以设置为‘tcp’或者‘udp’,如果不设置该参数,则基于任何协议的服务均可查询。

1.2 相关代码

1.2.1 获取指定服务对应的端口

使用图1所示代码可以获取指定服务对应的端口。

图1 获取指定服务对应的端口

以上代码的作用是获取ftp服务对应的端口,即端口号21。

1.2.2 获取指定协议的指定服务对应的端口号

使用图2所示代码可以获取指定协议的指定服务对应的端口。

图2 获取指定协议的指定服务对应的端口

以上代码的作用是获取基于tcp协议的ftp服务对应的端口,实际上和图1中代码的作用相同。如果将协议设置为upd,如图3所示,此时代码会报错。

图3 获取基于udp的ftp服务对应的端口

以上代码的作用是获取基于udp协议的ftp服务对应的端口,从报错信息可以看出,没有找到基于udp协议的ftp服务,实际上我们使用的ftp服务都是基于tcp协议的。

2 getservbyport()函数

getservbyport()函数的作用是通过指定端口号获取该端口号对应的服务名。

2.1 语法

getservbyport()函数的语法如下所示:

socket.getservbyport(port[, protocolname])

其中,参数port是指定的端口号;参数rotocolname是一个可选的参数,表示该服务所基于的协议名,该参数可以设置为‘tcp’或者‘udp’,如果不设置该参数,则基于任何协议的服务均可查询。

2.2 相关代码

2.2.1 获取指定端口对应的服务名

使用图4所示代码可以获取指定端口对应的服务名。

图4 获取指定端口对应的服务名

以上代码的作用是获取端口21对应的服务名,即ftp服务。

2.2.2 获取指定协议的指定端口号对应的服务名

使用如图5所示的代码可以获取指定协议的指定端口号对应的服务名。

图5 获取指定协议的指定端口号对应的服务名

以上代码的作用是获取基于tcp协议的21端口号对应的服务名,实际上和图1中代码的作用相同。如果将协议设置为upd,如图6所示,此时会得到另外的一个服务名fsp。也就是说ftp服务和fsp服务都是使用21端口,但是ftp服务是基于tcp协议的,fsp服务是基于udp的。

图6 获取指定协议的指定端口号对应的服务名

相关链接2, fsp是file server protocol即文件服务协议的简写,是一个基于UDP轻量级的文件传输协议。

2.2.3 获取指定范围内端口号对应的服务名

可以通过for循环获取指定范围内端口号对应的服务名,如图7所示。

图7 获取指定范围内端口号对应的服务名

以上代码的作用是获取1-99的端口号对应的服务名,因为有些端口没有对应的服务名,此时getservbyport()函数会报错,因此使用异常处理的方式,当该端口没有对应服务名时,输出相应信息,如图8所示。

图8 1-99端口对应的服务名

到此这篇关于Python中getservbyport和getservbyname函数的用法的文章就介绍到这了,更多相关getservbyport和getservbyname函数的用法内容请搜索码农之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持码农之家!


参考资料

相关文章

  • 教你如何用python爬取王者荣耀月收入流水线

    教你如何用python爬取王者荣耀月收入流水线

    发布:2022-07-04

    给网友朋友们带来一篇关于python的教程,这篇文章主要介绍了教你如何用python爬取王者荣耀月收入流水线,对正在学习python的小伙伴们有一定的帮助,需要的朋友可以参考下


  • Python input()函数案例教程

    发布:2023-03-04

    在 Python 中,input() 函数用于获取用于的输入,并给出提示。input() 函数,总是返回 string 类型,因此,我们可以使用 input() 函数,获取用户输入的任何数据类型 ,这篇文章主要介绍了Python input()函数案例详解,需要的朋友可以参考下


  • python利用ffmpeg进行录制屏幕的方法

    发布:2022-07-12

    为网友们分享了关于python的教程,今天小编就为大家分享一篇python利用ffmpeg进行录制屏幕的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧


  • python基于paramiko库远程执行 SSH 命令,实现 sftp 下载文件

    发布:2022-07-06

    给网友朋友们带来一篇关于python的教程,这篇文章主要介绍了python基于paramiko库远程执行 SSH 命令,实现 sftp 下载文件的方法,帮助大家更好的理解和学习使用python,感兴趣的朋友可以了解下


  • 分享如何使用python编写简单的小程序编译成exe跑在win10上

    发布:2020-02-20

    这篇文章主要介绍了使用python编写简单的小程序编译成exe跑在win10上的相关资料,需要的朋友可以参考下


  • 用python打开文件的详细方法

    发布:2019-10-29

    python下打开文件超级简单,不用导入任何包,直接输入f = open('your_file.txt','r')即可。


  • Python3安装Pillow与PIL的方法

    发布:2022-06-14

    为网友们分享了关于Python3的教程,今天小编就为大家分享一篇关于Python3安装Pillow与PIL的方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧


  • 为什么说python适合人工智能

    发布:2020-06-14

    在本篇文章里小编给大家分享了关于python适合人工智能的理由和优势以及相关知识点,需要的朋友们学习下。


网友讨论