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

 更新时间:2018年07月24日 08:44:16   作者:wanlifeipeng  
这篇文章主要介绍了Python实现的tcp端口检测操作,结合实例形式分析了Python使用socket模块实现tcp端口检测功能的相关操作技巧,需要的朋友可以参考下

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

# coding=utf-8
import sys
import socket
import re
def 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 False
if __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程序设计有所帮助。

相关文章

  • 10分钟教你用Python实现微信自动回复功能

    10分钟教你用Python实现微信自动回复功能

    今天,我们就来用Python实现微信的自动回复功能吧,并且把接收到的消息统一发送到文件助手里面,方便统一查看。感兴趣的朋友跟随小编一起看看吧
    2018-11-11
  • 配置python连接oracle读取excel数据写入数据库的操作流程

    配置python连接oracle读取excel数据写入数据库的操作流程

    这篇文章主要介绍了配置python连接oracle,读取excel数据写入数据库,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • Python实现将MySQL数据库表中的数据导出生成csv格式文件的方法

    Python实现将MySQL数据库表中的数据导出生成csv格式文件的方法

    这篇文章主要介绍了Python实现将MySQL数据库表中的数据导出生成csv格式文件的方法,涉及Python针对mysql数据库的连接、查询、csv格式数据文件的生成等相关操作技巧,需要的朋友可以参考下
    2018-01-01
  • 关于Flask 上下文详细介绍

    关于Flask 上下文详细介绍

    这篇文章主要给大家分享了关于Flask 上下文详细介绍,我们可以把上下文理解为当前环境的快照,是一个用来保存状态的对象。在代码执行的某个时刻,根据上下文的代码逻辑,可以决定在当前时刻下使用到的环境变量等。下面一起进入文章了解详情内容,需要的朋友也可以参考一下
    2021-11-11
  • 详解Python3.6安装psutil模块和功能简介

    详解Python3.6安装psutil模块和功能简介

    这篇文章主要介绍了详解Python3.6安装psutil模块和功能简介,详细的介绍了安装psutil模块和该模块的使用,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05
  • pygame实现井字棋之第二步逻辑实现

    pygame实现井字棋之第二步逻辑实现

    这篇文章主要介绍了pygame实现井字棋之第二步逻辑实现,文中有非常详细的代码示例,对正在学习python的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-05-05
  • Python基础教程之多线程编程详解

    Python基础教程之多线程编程详解

    Python支持多线程编程和多进程编程,在本教程中,我们将学习有关Python多线程编程的基础知识、线程同步、线程池以及如何使用多进程,需要的朋友可以参考下
    2023-06-06
  • Flask中基于Token的身份认证的实现

    Flask中基于Token的身份认证的实现

    本文主要介绍了Flask中基于Token的身份认证的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • Pycharm编辑器技巧之自动导入模块详解

    Pycharm编辑器技巧之自动导入模块详解

    我们在编程过程中经常会不经意的使用到一些尚未导入的类和模块,在这种情况下Pycharm会帮助我们定位模块文件位置并将其添加到导入列表中,这也就是所谓的自动导入模块功能。本文给大家介绍了关于Pycharm编辑器技巧之自动导入模块的相关资料,需要的朋友可以参考下。
    2017-07-07
  • Python使用paramiko操作linux的方法讲解

    Python使用paramiko操作linux的方法讲解

    今天小编就为大家分享一篇关于Python使用paramiko操作linux的方法讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02

最新评论