当前位置: 首页 > news >正文

安徽华强建设集团网站建立化妆品网站功能

安徽华强建设集团网站,建立化妆品网站功能,建设中网站首页,济南公司网站建设文章目录 前言1. 命令行传参2. 代码 前言 最近在只有python2的服务器上部署服务,不能用三方类库,这里出于好奇心学习下python。这里简单做个脚本,实现了检验网络连通性的功能(类似于curl)。 1. 命令行传参 使用命令…

文章目录

    • 前言
    • 1. 命令行传参
    • 2. 代码

前言

最近在只有python2的服务器上部署服务,不能用三方类库,这里出于好奇心学习下python。这里简单做个脚本,实现了检验网络连通性的功能(类似于curl)。
在这里插入图片描述

1. 命令行传参

使用命令行的目的是可以一次性检验多个url的连通性,比如上线前对接多个三方接口可以用上。

python test_socket.py -u "{'https://www.baidu.com':'120.232.145.144','ws://localhost:8080/ws':'127.0.0.1','wss://hello/ws':''}" 

参数解释

{'https://www.baidu.com':'120.232.145.144', // 期待域名解析为120.232.145.144 否则报错'ws://localhost:8080/ws':'127.0.0.1',  // 期待域名解析为127.0.0.1 否则报错'wss://hello/ws':''  // 无期望域名解析的ip,保证连通性即可
}

2. 代码

# -*- coding: utf-8 -*-# coding:utf-8
import sys
import getopt
import socket
import urlparse
import redef get_hostname(input_url):if len(input_url) == 0:return 'url为空'hostname = urlparse.urlparse(input_url).hostnameif hostname is None:return '域名解析为空'try:return socket.gethostbyname(hostname)except socket.error:return '域名解析异常'def get_port(input_url):if len(input_url) == 0:return 'url为空'# url 上读端口号input_port = urlparse.urlparse(input_url).portif input_port:return input_port# url 上读不到端口号用协议类型区分scheme = urlparse.urlparse(input_url).schemeif scheme == 'https' or scheme == 'wss':return 443if scheme == 'http' or 'ws':return 80def check_connect(input_ip, input_port):# 设置超时时间为3秒钟socket.setdefaulttimeout(3)s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)try:s.connect((input_ip, input_port))return '可联通'except socket.timeout:return '无法联通, 超时'except Exception as e:return '无法联通, 异常:' + str(e)finally:s.close()# 从命令行中读取参数
opts, argv = getopt.getopt(sys.argv[1:], 'u:')
ops = dict(opts)
url_ip_dict = eval(ops.get('-u'))# 循环参数内容进行连通性检测
print "-"*150
printTemplate = "%-60s %-20s %-20s %-50s"
print printTemplate % ('url', 'ip', 'port', 'result')
print "-"*150
for input_url, input_ip in url_ip_dict.iteritems():# 域名解析actual_ip = get_hostname(input_url)# 未能解析出ip为异常if not re.match(r'\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}', input_ip):print printTemplate % (input_url, '\\', '\\', actual_ip)continue# 解析出ip, 且入参存在ip 则校验是否是解析出来的ipif input_ip:if actual_ip != input_ip:print printTemplate % (input_url, input_ip, '\\', '未能联通, 实际解析的ip为' + actual_ip)continueport = get_port(input_url)# 连通性测试result = check_connect(actual_ip, port)print printTemplate % (input_url, actual_ip, port, result)
http://www.yayakq.cn/news/525098/

相关文章:

  • wordpress不能选择数据库做网站优化的教程
  • 做网站预算如何搭建企业网站
  • 成都网站seo诊断注册企业邮箱收费吗
  • 做公众号的网站模板珠海网站建设及优化
  • 如何用代码做分数查询的网站网站运营存在的问题
  • 网站设计有哪些语言版本昆明网络推广公司排名
  • 济南做网站最好的单位公关
  • 小网站 收入wordpress 数据库替换
  • 门户网站 模板新办公司网上核名在哪个网站做
  • 网站如何做分站系统网站建设与运营的课程总结
  • 不限流量网站空间新能源汽车价格及图片
  • 宿州网站建设电话wordpress yuti
  • 在线 网站建设开个免费一代发网店
  • 销售平台网站建设做网站如何防止被坑
  • 旅游网站策划方案图片链接生成网站
  • 做网站外链需要多少钱注册文化传媒公司流程和费用
  • 如何开 网站建设公司专业团队原图
  • 云南省建设厅标准员网站手机网站模板制作
  • 网网站建设的公司全国楼市走势最新消息
  • 网站推广论坛北辰做网站公司
  • 影视资源api接口深圳外贸seo网站推广
  • 网站怎么做成小程序wordpress无法安装主题
  • 网站建设费用怎么核算网店美工毕业设计
  • 网站建设设计哪个济南兴田德润简介改域名 wordpress
  • wordpress关停网站新建网站做优化
  • 青岛做网站要多少钱做的网站 为什么百度搜不到
  • 学技能的免费网站温州市住房建设局网站
  • 现在做网站有前途吗多语种网站建设公司
  • 网站设置域名电子商务做网站实训体会
  • 网站内容策划方案wordpress+播放列表