Python根据服务获取端口号的方法

这篇文章主要介绍了Python根据服务获取端口号,文中给大家提到了linux查看端口开启端口的方法,需要的朋友可以参考下

根据服务获取端口号

首先需要下载一个psutil库

然后根据服务名找到PID

找到PID之后,通过pid获取端口号

 # -*- encoding=utf8 -*- import psutil import re## 标题 import os def processinfo(x): '''根据服务名找到PID''' procs = list(psutil.process_iter()) # 获取所有服务列表 print(procs) for r in procs: aa = str(r) f = re.compile(x,re.I) if f.search(aa): print (aa.split('pid=')[1].split(',')[0]) return aa.split('pid=')[1].split(',')[0] # print (aa.split('pid=')) def port(x): '''通过pid获取端口号''' PID = processinfo(x) cmd = 'netstat -ano | findstr' + ' '+str(PID) print(cmd) a = os.popen(cmd) # 此时打开的a是一个对象,如果直接打印的话是对象内存地址 text = a.read() # 要用read()方法读取后才是文本对象 first_line = text.split(':') ab = first_line[1] cd = ab.split(' ') por = cd[0] print(por) return por

知识点扩展:linux查看端口开启端口

一、查看哪些端口被打开  netstat -anp

二、关闭端口号:iptables -A INPUT -p tcp --drop 端口号-j DROP 

 iptables -A OUTPUT -p tcp --dport 端口号-j DROP

三、打开端口号:iptables -A INPUT -ptcp --dport  端口号-j ACCEPT

四、以下是linux打开端口命令的使用方法。

  nc -lp 23 &(打开23端口,即telnet)   netstat -an | grep 23 (查看是否打开23端口)

五、linux打开端口命令每一个打开的端口,都需要有相应的监听程序才可以

总结

以上所述是小编给大家介绍的Python根据服务获取端口号的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对html中文网网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

以上就是Python根据服务获取端口号的方法的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » python