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 Deque 模块使用详解
Jul 04 Python
利用Python绘制数据的瀑布图的教程
Apr 07 Python
Python实现统计代码行的方法分析
Jul 12 Python
Python 调用PIL库失败的解决方法
Jan 08 Python
Python datetime和unix时间戳之间相互转换的讲解
Apr 01 Python
对Python中class和instance以及self的用法详解
Jun 26 Python
python如何从文件读取数据及解析
Sep 19 Python
python 多进程并行编程 ProcessPoolExecutor的实现
Oct 11 Python
python3.8.1+selenium实现登录滑块验证功能
May 22 Python
Python 代码调试技巧示例代码
Aug 11 Python
搭建pypi私有仓库实现过程详解
Nov 25 Python
Python基础之常用库常用方法整理
Apr 30 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新手入门学习方法
2011/05/08 PHP
解析php安全性问题中的:Null 字符问题
2013/06/21 PHP
如何使用PHP获取指定日期所在月的开始日期与结束日期
2013/08/01 PHP
用 Composer构建自己的 PHP 框架之设计 MVC
2014/10/30 PHP
PHP PDOStatement::setAttribute讲解
2019/02/01 PHP
PHP中引用类型和值类型功能与用法示例
2019/02/26 PHP
jQuery checkbox全选/取消全选实现代码
2009/11/14 Javascript
JS+ACTIVEX实现网页选择本地目录路径对话框
2013/03/18 Javascript
小结Node.js中非阻塞IO和事件循环
2014/09/18 Javascript
简单谈谈jQuery(function(){})与(function(){})(jQuery)
2014/12/19 Javascript
jQuery中contents()方法用法实例
2015/01/08 Javascript
Web 开发中Ajax的Session 超时处理方法
2017/01/19 Javascript
基于Datatables跳转到指定页的简单实例
2017/11/09 Javascript
浅谈在node.js进入文件目录的问题
2018/05/13 Javascript
jQuery实现点击自身以外区域关闭弹出层功能完整示例【改进版】
2018/07/31 jQuery
json字符串传到前台input的方法
2018/08/06 Javascript
element上传组件循环引用及简单时间倒计时的实现
2018/10/01 Javascript
JavaScript如何把两个数组对象合并过程解析
2019/10/10 Javascript
javascript实现前端分页效果
2020/06/24 Javascript
[03:15]DOTA2-DPC中国联赛1月22日Recap集锦
2021/03/11 DOTA
python实现的简单抽奖系统实例
2015/05/22 Python
Python实现对象转换为xml的方法示例
2017/06/08 Python
15行Python代码实现网易云热门歌单实例教程
2019/03/10 Python
Python BeautifulSoup [解决方法] TypeError: list indices must be integers or slices, not str
2019/08/07 Python
django admin后管定制-显示字段的实例
2020/03/11 Python
装上这 14 个插件后,PyCharm 真的是无敌的存在
2021/01/11 Python
华为智利官方商店:Huawei Chile
2020/05/09 全球购物
库房主管岗位职责
2013/12/31 职场文书
企业业务员岗位职责
2014/03/14 职场文书
毕业论文评语大全
2014/04/29 职场文书
付款承诺函范文
2015/01/21 职场文书
大雁塔导游词
2015/02/04 职场文书
2015年度个人业务工作总结
2015/04/27 职场文书
我的法兰西岁月观后感
2015/06/09 职场文书
金正昆讲礼仪观后感
2015/06/11 职场文书
使用GO语言实现Mysql数据库CURD的简单示例
2021/08/07 Golang