PYTHON 测试服务器连通性

#-*-coding:utf-8-*-
import os
import sys
import urllib2
import pygame
import re
import socket
import subprocess

# 输入要测试的site值
print "Hello"
print pygame.ver
site=raw_input("Pls Input Your Site:")
req = urllib2.Request(‘http://192.168.1.88/cc.txt‘)
fd = urllib2.urlopen(req)

#http://192.168.1.88/cc.txt连接文件的第一列为site,第二列为电信IP,第三列为联通IP,第四列为域名
for i in fd.readlines():
    i2 = re.match(site,i)
    if i2:
        SITE,DXIP,LTIP,DOMAIN=i.split()
        AGENT,ID=SITE.split(‘_‘)
        strinfo = re.compile(‘^0*‘)
        id = strinfo.sub(‘‘,ID)
        domain = ‘s‘+id+"."+DOMAIN

#端口测试
for PORT in (1001,1002,1003):
                s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
                s.settimeout(1)
                DXADDR = (str(DXIP),int(PORT))
                dxstatus = s.connect_ex(DXADDR)
                LTADDR = (str(DXIP),int(PORT))
                ltstatus = s.connect_ex(LTADDR)
                if dxstatus == 0:
                    print ‘Test DX Connection to %s %s port [tcp] OK‘ % (DXIP,PORT)
                else:
                    print ‘Test DX Connection to %s %s port [tcp] FAIL‘ % (DXIP,PORT)
                    if ltstatus == 0:
                        print ‘Test LT Connection to %s %s port [tcp] OK‘ % (LTIP,PORT)
                    else:
                        print ‘Test lT Connection to %s %s port [tcp] FAIL‘ % (LTIP,PORT)  
                continue
    
#域名解析测试     
domainping = subprocess.call("ping -n 1 %s" % domain, shell=True, stdout=open(r‘ping.temp‘,‘w‘), stderr=subprocess.STDOUT) 
if domainping == 0:
    print "Domain name resolution %s: is OK"  %   domain
else:
    print "Domain name resolution %s: is FAIL" %  domain
    
#ping 测试 电信IP不行,就测试联通IP   
dxping = subprocess.call("ping -n 1 %s" % DXIP, shell=True, stdout=open(r‘ping.temp‘,‘w‘), stderr=subprocess.STDOUT) 
ltping = subprocess.call("ping -n 1 %s" % LTIP, shell=True, stdout=open(r‘ping.temp‘,‘w‘), stderr=subprocess.STDOUT)
if dxping == 0:
    print "ping DX %s: is OK" %  DXIP
else:
    print "ping DX %s is  FAIL"   % DXIP
if ltping == 0:
    print "ping LT %s: is OK" % LTIP
else:
    print "ping LT %s is  OK"   % LTIP

#页面打开测试
req1 = urllib2.Request(‘http://%s/aa.jsp‘ % domain)
try:
    urllib2.urlopen(req1)
    print ‘WebServer OK‘
except urllib2.URLError, e:
    print e.reason
#i3=fd1.readlines()
#m1=re.search(site,str(i3))
raw_input("Pls Input Any Key.......")

时间: 2024-10-18 02:31:24

PYTHON 测试服务器连通性的相关文章

使用python和批处理bat脚本ping检测主机连通性

今天因为工作需求,要在报盘机器上(windows系统)检测与上手连接的网络可用性,使用zabbix自身的功能并不能解决这个问题.所以一开始考虑使用python脚本调系统的ping命令来检测 然后再使用zabbix来监控就可完成任务. 网上查了下,发现使用subprocess和shlex可以完成检测,于是参考着整了个小脚本 #!/usr/bin/env python # -*- coding: utf-8 -*- #author:qingmiao import subprocess import 

python学习 —— 多线程发送请求测试服务器压力

以前写过的python多线程终于派上用场了,其实还没开始测试,但下周会使用这个脚本测试一下,虽然boss让我用C++来做: # coding=utf-8 import random import string import threading import time from requests import post class MultiThread(threading.Thread): def __init__(self, url, qlock): threading.Thread.__in

Python批量检测连通性

#!/usr/bin/env python3 #author:zhouxia #date:2016-08-05 import socket def checkip(ipaddr,port):     try:         sock = socket.socket(socket.AF_INET,socket.SOCK_STREAM)         sock.settimeout(3)         sock.connect((ipaddr,port))         return Tru

怎么用ping命令测试服务器网络连通性

ping(packet internet groper)是在网络测试中使用最频繁工具之一,该命令用于确定两个或多个网络结点之间的下层连接是否可用,另外还可提供基本的网络性能统计数据,有助于诊断与通信相关的网络问题. ping命令的语言格式如下: [[email protected] ~]# ping 主机名或IP 1.确定网络设备系统可用性 使用ping命令可以测试网络设备的可用性.操作方法如下: [[email protected] ~]# ping -c 4.192.168.1.1 若本机与

用Python对MySQL同步状态进行监控

用Python对MySQL同步状态进行监控 使用Python对MySQL数据库服务器是否可访问,及主从同步是否中断进行监控,是一件非常简单的事情.感谢Python给我们带来了如此简单,强大,快捷的开发环境. 本文使用到的Python模块 使用telnetlib校验服务器是否可被访问 使用SMTP向管理员发送通知邮件 使用MySQL官方的驱动对数据库进行访问 使用optparse实现命令行参数的提取 实现原理 使用optparse模块获取命令行参数.读取defaults-file设置文件内容(如果

Python+Requests接口测试教程(1):Fiddler抓包工具

本书涵盖内容:fiddler.http协议.json.requests+unittest+报告.bs4.数据相关(mysql/oracle/logging)等内容.刚买须知:本书是针对零基础入门接口测试和python+requests自动化的,首先本书确实写的比较基础,对基础内容也写的很详细,所以大神绕道. 为什么要先学fiddler? 学习接口测试必学http协议,如果直接先讲协议,我估计小伙伴们更懵,为了更好的理解协议,先从抓包开始.结合抓包工具讲http协议更容易学一些. 1.1 抓fir

python之tcp自动重连

操作系统: CentOS 6.9_x64 python语言版本: 2.7.13 问题描述 现有一个tcp客户端程序,需定期从服务器取数据,但由于种种原因(网络不稳定等)需要自动重连. 测试服务器示例代码: https://github.com/mike-zhang/pyExamples/blob/master/socketRelate/tcpServer1_multithread.py 解决方案 ''' tcp client with reconnect E-Mail : [email prot

python requests用法总结

requests是一个很实用的Python HTTP客户端库,编写爬虫和测试服务器响应数据时经常会用到.可以说,Requests 完全满足如今网络的需求 本文全部来源于官方文档 http://docs.python-requests.org/en/master/ 安装方式一般采用$ pip install requests.其它安装方式参考官方文档 HTTP - requests import requests GET请求 r  = requests.get('http://httpbin.or

python的项目结构

项目结构 知识点 创建项目,编写 __init__ 文件 使用 setuptools 模块,编写 setup.py 和 MANIFEST.in 文件 创建源文件的发布版本 项目注册&上传到 PyPI 实验步骤 本实验阐述了一个完整的 Python 项目结构,你可以使用什么样的目录布局以及怎样发布软件到网络上. 我们的实验项目名为 factorial. $ mkdir factorial $ cd factorial/ 1. 主代码 我们给将要创建的 Python 模块取名为 myfact,因此我