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


Posted in Python onJuly 24, 2018

本文实例讲述了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程序设计有所帮助。

Python 相关文章推荐
python缩进区别分析
Feb 15 Python
Python BeautifulSoup中文乱码问题的2种解决方法
Apr 22 Python
Python实现抓取网页并且解析的实例
Sep 20 Python
win10系统中安装scrapy-1.1
Jul 03 Python
深入理解Django的中间件middleware
Mar 14 Python
在Python中给Nan值更改为0的方法
Oct 30 Python
对python实现合并两个排序链表的方法详解
Jan 23 Python
python查询文件夹下excel的sheet名代码实例
Apr 02 Python
详解python读取image
Apr 03 Python
wxpython实现按钮切换界面的方法
Nov 19 Python
pycharm第三方库安装失败的问题及解决经验分享
May 09 Python
jupyter notebook保存文件默认路径更改方法汇总(亲测可以)
Jun 09 Python
python正则表达式之对号入座篇
Jul 24 #Python
Python 字符串与二进制串的相互转换示例
Jul 23 #Python
Python二进制串转换为通用字符串的方法
Jul 23 #Python
Python基于多线程实现ping扫描功能示例
Jul 23 #Python
Python Tkinter模块实现时钟功能应用示例
Jul 23 #Python
python定向爬虫校园论坛帖子信息
Jul 23 #Python
python实现图片批量压缩程序
Jul 23 #Python
You might like
php self,$this,const,static,->的使用
2009/10/22 PHP
php中对2个数组相加的函数
2011/06/24 PHP
PHP采集利器 Snoopy 试用心得
2011/07/03 PHP
ThinkPHP中ajax使用实例教程
2014/08/22 PHP
PHP查询快递信息的方法
2015/03/07 PHP
JavaScript null和undefined区别分析
2009/10/14 Javascript
子窗口、父窗口和Silverlight之间的相互调用
2010/08/16 Javascript
js输入框邮箱自动提示功能代码实现
2013/12/10 Javascript
javascript原生和jquery库实现iframe自适应高度和宽度
2014/07/18 Javascript
使用DNode实现php和nodejs之间通信的简单实例
2015/07/06 NodeJs
jQuery实现简易的天天爱消除小游戏
2015/10/16 Javascript
实例详解angularjs和ajax的结合使用
2015/10/22 Javascript
jQuery 利用$.ajax 时获取原生XMLHttpRequest 对象的方法
2016/08/25 Javascript
ES6新特性之模块Module用法详解
2017/04/01 Javascript
Vue Transition实现类原生组件跳转过渡动画的示例
2017/08/19 Javascript
Vue-cli创建项目从单页面到多页面的方法
2017/09/20 Javascript
javascript中floor使用方法总结
2019/02/02 Javascript
Javascript文本框脚本实现方法解析
2020/10/30 Javascript
[01:05:52]DOTA2-DPC中国联赛 正赛 Ehome vs Aster BO3 第一场 2月2日
2021/03/11 DOTA
[01:10:27]DOTA2-DPC中国联赛正赛 SAG vs XG BO3 第二场 3月5日
2021/03/11 DOTA
解析Python中的变量、引用、拷贝和作用域的问题
2015/04/07 Python
Python工程师面试必备25条知识点
2018/01/17 Python
Python安装selenium包详细过程
2019/07/23 Python
Pytorch环境搭建与基本语法
2020/06/03 Python
python访问hdfs的操作
2020/06/06 Python
利用python批量爬取百度任意类别的图片的实现方法
2020/10/07 Python
app内嵌H5 webview 本地缓存问题的解决
2020/10/19 HTML / CSS
Ted Baker英国官网:男士和女士服装及配件
2017/03/13 全球购物
印度第一网上礼品店:IGP.com
2020/02/06 全球购物
门卫岗位安全职责
2013/12/13 职场文书
2014年征兵标语
2014/06/20 职场文书
国际贸易求职信
2014/07/05 职场文书
初三毕业评语
2014/12/26 职场文书
杭州黄龙洞导游词
2015/02/10 职场文书
浅谈python中的多态
2021/06/15 Python
Vue.js中v-bind指令的用法介绍
2022/03/13 Vue.js