python 获取域名到期时间的方法步骤


Posted in Python onFebruary 10, 2021

需求:

我要查询百度域名的到期时间或者开始时间

思路分析:

如果在linux系统中直接使用下面命令即可:

echo | openssl s_client -servername www.baidu.com -connect www.baidu.com:443 2>/dev/null | openssl x509 -noout -dates|egrep ‘notAfter'|awk -F'=|GMT' ‘{print $2}'

但是这个命令使用python2 的commands执行不成功,所以只能换成通过shell脚本去执行。

init_sh函数检查shell脚本不存在则创建,这样不需要多写一个脚本,有程序生成。

#!/usr/bin/python
# -*- coding: utf-8 -*-
# author: chentufeng
# create time: 2020 12 25
import commands,os
script_sh = ".tmp.sh"
# 自动生成shell脚本用来执行shell命令获取时间
def init_sh():
  if not os.path.exists(script_sh):
    with open(script_sh, 'w') as file_object:
      file_object.write("yuming=$1\ntag=$2\n"
      "ymtime=`echo | openssl s_client -servername $yuming -connect $yuming:443 2>/dev/null | openssl x509 -noout -dates|egrep \"$tag\"|awk -F'=|GMT' '{print $2}'`\n"
      #时间转换,如果需要也可以转换成其他格式
      "date -d \"$ymtime\" '+%Y-%m-%d %H:%M:%S'\n")
if __name__ == '__main__':
  #初始化函数
  init_sh()
  yuming = "www.baidu.com"
  tag = "notBefore" #notBefore 开始时间;notAfter 到期时间
  cmd = "sh %s %s %s"%(script_sh, yuming, tag)
  restatus,retime = commands.getstatusoutput(cmd)
  print("获取的时间:%s"%retime)

输出结果:

到期时间
[root@测试机 ~]# python aa.py
获取的时间:2021-07-26 05:31:02
开始时间
[root@测试机 ~]# python aa.py
获取的时间:2020-04-02 07:04:58

到此这篇关于python 获取域名到期时间的方法步骤的文章就介绍到这了,更多相关python 获取域名到期时间内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python程序设计入门(2)变量类型简介
Jun 16 Python
跟老齐学Python之重回函数
Oct 10 Python
Python的Django框架中设置日期和字段可选的方法
Jul 17 Python
Python的Django框架中URLconf相关的一些技巧整理
Jul 18 Python
编写Python脚本抓取网络小说来制作自己的阅读器
Aug 20 Python
总结python爬虫抓站的实用技巧
Aug 09 Python
浅谈使用Python变量时要避免的3个错误
Oct 30 Python
Python3+Appium实现多台移动设备操作的方法
Jul 05 Python
Python3 itchat实现微信定时发送群消息的实例代码
Jul 12 Python
Django app配置多个数据库代码实例
Dec 17 Python
Python @property及getter setter原理详解
Mar 31 Python
django表单中的按钮获取数据的实例分析
Jul 31 Python
Numpy ndarray 多维数组对象的使用
Feb 10 #Python
Python将QQ聊天记录生成词云的示例代码
Feb 10 #Python
python利用文件时间批量重命名照片和视频
Feb 09 #Python
python opencv实现图像配准与比较
Feb 09 #Python
python urllib和urllib3知识点总结
Feb 08 #Python
Python3.9.1中使用match方法详解
Feb 08 #Python
python读取excel数据并且画图的实现示例
Feb 08 #Python
You might like
php adodb连接不同数据库
2009/03/19 PHP
php空间不支持socket但支持curl时recaptcha的用法
2011/11/07 PHP
jQuery+php实现ajax文件即时上传的详解
2013/06/17 PHP
php读取图片内容并输出到浏览器的实现代码
2013/08/08 PHP
PHP基于迭代实现文件夹复制、删除、查看大小等操作的方法
2017/08/11 PHP
php+redis实现商城秒杀功能
2020/11/19 PHP
PDO::beginTransaction讲解
2019/01/27 PHP
与jquery serializeArray()一起使用的函数,主要来方便提交表单
2011/01/31 Javascript
js获取事件源及触发该事件的对象
2013/10/24 Javascript
探讨jQuery的ajax使用场景(c#)
2013/12/03 Javascript
JavaScript获得url所有参数键值表的方法
2015/03/21 Javascript
详解JavaScript基于面向对象之创建对象(2)
2015/12/10 Javascript
解析javascript瀑布流原理实现图片滚动加载
2016/03/10 Javascript
AngularJS基础 ng-keypress 指令简单示例
2016/08/02 Javascript
React Native之ListView实现九宫格效果的示例
2017/08/02 Javascript
JS实现定时任务每隔N秒请求后台setInterval定时和ajax请求问题
2017/10/15 Javascript
vue计算属性时v-for处理数组时遇到的一个bug问题
2018/01/21 Javascript
axios全局请求参数设置,请求及返回拦截器的方法
2018/03/05 Javascript
关于HTML5的data-*自定义属性的总结
2018/05/05 Javascript
Vuex入门到上手教程
2018/06/20 Javascript
JavaScript函数式编程(Functional Programming)组合函数(Composition)用法分析
2019/05/22 Javascript
layui radio点击事件实现input显示和隐藏的例子
2019/09/02 Javascript
使用Python的Tornado框架实现一个Web端图书展示页面
2016/07/11 Python
Python selenium 父子、兄弟、相邻节点定位方式详解
2016/09/15 Python
解决安装tensorflow遇到无法卸载numpy 1.8.0rc1的问题
2018/06/13 Python
浅谈python requests 的put, post 请求参数的问题
2019/01/02 Python
python 输出所有大小写字母的方法
2019/01/02 Python
Python创建自己的加密货币的示例
2021/03/01 Python
利用CSS3的定位页面元素
2009/08/29 HTML / CSS
浅谈Html5移动端ios/Android兼容性总结
2018/06/01 HTML / CSS
阿根廷在线宠物商店:Puppis
2018/03/23 全球购物
Homestay中文官网:全球寄宿家庭
2018/10/18 全球购物
诚信承诺书范文
2014/03/27 职场文书
大学生志愿者活动总结
2014/06/27 职场文书
领导班子四风对照检查材料思想汇报
2014/09/26 职场文书
pytorch查看网络参数显存占用量等操作
2021/05/12 Python