Python根据服务获取端⼝号的⽅法
根据服务获取端⼝号
⾸先需要下载⼀个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 = repile(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根据服务获取端⼝号的⽅法,希望对⼤家有所帮助,如果⼤家有任何疑问请给我留⾔,⼩编会及时回复⼤家的。在此也⾮常感谢⼤家对⽹站的⽀持!
如果你觉得本⽂对你有帮助,欢迎转载,烦请注明出处,谢谢!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论