首页 > 编程 > Python > 正文

Python实现的tcp端口检测操作示例

2020-02-15 22:30:02
字体:
来源:转载
供稿:网友

本文实例讲述了Python实现的tcp端口检测操作。分享给大家供大家参考,具体如下:

# coding=utf-8import sysimport socketimport redef check_server(address, port):  s = socket.socket()  print 'Attempting to connect to %s on port %s' % (address, port)  try:    s.connect((address, port))    print 'Connected to %s on port %s' % (address, port)    return True  except socket.error as e:    print 'Connection to %s on port %s failed: %s' % (address, port, e)    return Falseif __name__ == '__main__':  from argparse import ArgumentParser  parser = ArgumentParser(description=u'TCP端口检测')  parser.add_argument(    '-a',    '--address',    dest='address',    default='localhost',    help='address for the server')  parser.add_argument(    '-p',    '--port',    dest="port",    default=80,    type=int,    help='port for the server')  args = parser.parse_args()  check = check_server(args.address, args.port)  print 'check_server returned %s' % check  sys.exit(not check)

测试结果:

[hupeng@hupeng-vm Python]$python check_server.py && echo "SUCCESS"
Attempting to connect to localhost on port 80
Connected to localhost on port 80
check_server returned True
SUCCESS
[hupeng@hupeng-vm Python]$python check_server.py -p 81 && echo "Failure"
Attempting to connect to localhost on port 81
Connection to localhost on port 81 failed: [Errno 111] Connection refused
check_server returned False
[hupeng@hupeng-vm Python]$python check_server.py -p 81 || echo "Failure"
Attempting to connect to localhost on port 81
Connection to localhost on port 81 failed: [Errno 111] Connection refused
check_server returned False
Failure

附:

shell中&&||的使用方法

命令的返回结果:真(返回0),假(返回非0)

command1  && command2: command1返回真时,command2才会被执行

command1  || command2:command1返回真时,command2就不会被执行

更多关于Python相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表