我们要通过正则去获取一段信息中与之匹配的内容,需要使用到正则表达式,Python 的 re 模块,要判断端口是否打开则可以使用 socket 模块,具体代码如下:
代码
# import re
#
ticket_info = "服务器怎么无法远程连接了,IP 地址是59.111.104.113,麻烦帮我看下"
import re
import socket
pattern = re.compile(r'((?:(?:25[0-5]|2[0-4]\d|(?:1\d{2}|[1-9]?\d))\.){3}(?:25[0-5]|2[0-4]\d|(?:1\d{2}|[1-9]?\d)))') # 查找数字
ip_info = pattern.findall(ticket_info)
if ip_info[0] is not None:
for port in [22,3389,80,443]:
sk = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sk.settimeout(1)
try:
sk.connect((ip_info[0],port))
print("Server: %s port %s OK!" %(ip_info[0],port))
except Exception:
print("Server: %s port %s OK!" % (ip_info[0], port))
sk.close()