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解析中国天气网的天气数据
Mar 21 Python
讲解Python中的递归函数
Apr 27 Python
举例区分Python中的浅复制与深复制
Jul 02 Python
浅析Python基础-流程控制
Mar 18 Python
Python三级目录展示的实现方法
Sep 28 Python
利用Python脚本生成sitemap.xml的实现方法
Jan 31 Python
python实现zabbix发送短信脚本
Sep 17 Python
python实现转圈打印矩阵
Mar 02 Python
python变量的作用域是什么
May 26 Python
详解Python利用configparser对配置文件进行读写操作
Nov 03 Python
基于Python 函数和方法的区别说明
Mar 24 Python
Python 类,对象,数据分类,函数参数传递详解
Sep 25 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
WebQQ最新登陆协议的用法
2014/12/22 PHP
php需登录的文件上传管理系统
2020/03/21 PHP
php表单文件iframe异步上传实例讲解
2017/07/26 PHP
浅谈laravel-admin form中的数据,在提交后,保存前,获取并进行编辑
2019/10/21 PHP
jquery tools之tooltip
2009/07/25 Javascript
JS的反射问题
2010/04/07 Javascript
javascript判断ie浏览器6/7版本加载不同样式表的实现代码
2011/12/26 Javascript
JS实现Enter键跳转及控件获得焦点
2013/08/12 Javascript
js创建元素(节点)示例
2014/01/02 Javascript
ExtJS4给Combobox设置列表中的默认值示例
2014/05/02 Javascript
JavaScript获得当前网页来源页面(即上一页)的方法
2015/04/03 Javascript
js正则匹配出所有图片及图片地址src的方法
2015/06/08 Javascript
JQuery zClip插件实现复制页面内容到剪贴板
2015/11/02 Javascript
jQuery实现可拖拽的许愿墙效果【附demo源码下载】
2016/09/14 Javascript
js以分隔符分隔数组中的元素并转换为字符串的方法
2016/11/16 Javascript
vue.js单页面应用实例的简单实现
2017/04/10 Javascript
详细讲解vue2+vuex+axios
2017/05/27 Javascript
Vee-Validate的使用方法详解
2017/09/22 Javascript
vue Element-ui input 远程搜索与修改建议显示模版的示例代码
2017/10/19 Javascript
[42:25]2018DOTA2亚洲邀请赛 4.5 淘汰赛 LGD vs Liquid 第三场
2018/04/06 DOTA
[43:41]VP vs RNG 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.21.mp4
2020/07/19 DOTA
Python复制文件操作实例详解
2015/11/10 Python
Python安装lz4-0.10.1遇到的坑
2018/05/20 Python
Python3.7中安装openCV库的方法
2018/07/11 Python
Pandas时间序列:时期(period)及其算术运算详解
2020/02/25 Python
关于matplotlib-legend 位置属性 loc 使用说明
2020/05/16 Python
Python 高效编程技巧分享
2020/09/10 Python
美国新蛋IT数码商城:Newegg.com
2016/07/21 全球购物
印尼综合在线预订网站:Tiket.com(机票、酒店、火车、租车和娱乐)
2018/10/11 全球购物
MYPROTEIN澳大利亚官方网站:欧洲运动营养品牌
2019/06/26 全球购物
创业资金计划书
2014/02/06 职场文书
乡镇领导班子批评与自我批评材料
2014/09/23 职场文书
2014年保险公司工作总结
2014/11/22 职场文书
创卫工作总结2015
2015/04/22 职场文书
二婚主持词
2015/06/30 职场文书
SQL实现LeetCode(177.第N高薪水)
2021/08/04 MySQL