基于python檢查SSL證書到期情況代碼實(shí)例
結(jié)合郵件告警和頁(yè)面展示,再多的域名證書到期情況即可立馬知道
代碼示例:
# coding: utf-8
# 查詢域名證書到期情況
import re
import time
import subprocess
from datetime import datetime
from io import StringIO
def main(domain):
f = StringIO()
comm = f"curl -Ivs https://{domain} --connect-timeout 10"
result = subprocess.getstatusoutput(comm)
f.write(result[1])
m = re.search('start date: (.*?)\n.*?expire date: (.*?)\n.*?common name: (.*?)\n.*?issuer: CN=(.*?)\n', f.getvalue(), re.S)
start_date = m.group(1)
expire_date = m.group(2)
common_name = m.group(3)
issuer = m.group(4)
# time 字符串轉(zhuǎn)時(shí)間數(shù)組
start_date = time.strptime(start_date, "%b %d %H:%M:%S %Y GMT")
start_date_st = time.strftime("%Y-%m-%d %H:%M:%S", start_date)
# datetime 字符串轉(zhuǎn)時(shí)間數(shù)組
expire_date = datetime.strptime(expire_date, "%b %d %H:%M:%S %Y GMT")
expire_date_st = datetime.strftime(expire_date,"%Y-%m-%d %H:%M:%S")
# 剩余天數(shù)
remaining = (expire_date-datetime.now()).days
print ('域名:', domain)
print ('通用名:', common_name)
print ('開始時(shí)間:', start_date_st)
print ('到期時(shí)間:', expire_date_st)
print (f'剩余時(shí)間: {remaining}天')
print ('頒發(fā)機(jī)構(gòu):', issuer)
print ('*'*30)
time.sleep(0.5)
if __name__ == "__main__":
domains = ['www.baidu.com']
for domain in domains:
main(domain)
結(jié)果示例:
域名: www.baidu.com
通用名: baidu.com
開始時(shí)間: 2019-05-09 01:22:02
到期時(shí)間: 2020-06-25 05:31:02
剩余時(shí)間: 82天
頒發(fā)機(jī)構(gòu): GlobalSign Organization Validation CA - SHA256 - G2,O=GlobalSign nv-sa,C=BE
******************************
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- python安裝包出現(xiàn)SSL證書驗(yàn)證失敗?的問(wèn)題及解決方式
- Python中如何處理HTTPS請(qǐng)求和SSL證書驗(yàn)證詳解
- Python如何獲取域名的SSL證書信息和到期時(shí)間
- 使用python腳本檢查ssl證書到期時(shí)間
- Python自動(dòng)檢測(cè)SSL證書是否過(guò)期的實(shí)現(xiàn)示例
- python獲取域名ssl證書信息和到期時(shí)間
- Python實(shí)現(xiàn)檢測(cè)SSL證書是否過(guò)期
- Python SSL證書驗(yàn)證問(wèn)題解決方案
- Python安裝提示SSL證書錯(cuò)誤的解決辦法
相關(guān)文章
使用Python生成F分布表并導(dǎo)出為Excel文件的代碼實(shí)現(xiàn)
在統(tǒng)計(jì)分析中,F FF分布是一種非常重要的連續(xù)概率分布,廣泛應(yīng)用于方差分析、回歸分析的顯著性檢驗(yàn)等場(chǎng)景,為了方便查閱和使用F分布的臨界值,本文給大家介紹了使用Python生成F分布表并導(dǎo)出為Excel文件,需要的朋友可以參考下2024-11-11
Python中表達(dá)式x += y和x = x+y 的區(qū)別詳解
這篇文章主要跟大家介紹了關(guān)于Python中x += y和x = x+y 的區(qū)別的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。2017-06-06
Python?設(shè)計(jì)模式中的創(chuàng)建型建造者模式
本文介紹Python設(shè)計(jì)模式中的創(chuàng)建型建造者模式,其表現(xiàn)為復(fù)雜對(duì)象的創(chuàng)建與表現(xiàn)相分離,這樣,同一個(gè)過(guò)程就有不同的表現(xiàn),想要?jiǎng)?chuàng)建一個(gè)由多個(gè)部分組成的對(duì)象,而且它的構(gòu)成需要一步接一步的完成。只有當(dāng)各個(gè)部分都完成了,這個(gè)對(duì)象才完整,下文相關(guān)自來(lái)哦,需要的朋友可以參考下2022-02-02
Python讀寫Excel文件庫(kù)的實(shí)現(xiàn)示例
本文主要介紹了Python讀寫Excel文件庫(kù)的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-08-08
Python實(shí)現(xiàn)自動(dòng)登錄百度空間的方法
這篇文章主要介紹了Python實(shí)現(xiàn)自動(dòng)登錄百度空間的方法,涉及Python的http請(qǐng)求發(fā)送、獲取響應(yīng)、cookie操作等相關(guān)技巧,需要的朋友可以參考下2017-06-06
Python內(nèi)存管理之垃圾回收機(jī)制深入詳解
在編程世界中,內(nèi)存管理是一個(gè)至關(guān)重要卻又常常被忽視的話題,Python作為一門高級(jí)編程語(yǔ)言,其最大的優(yōu)勢(shì)之一就是自動(dòng)內(nèi)存管理機(jī)制,下面小編就為大家詳細(xì)介紹一下吧2025-11-11
python爬蟲scrapy基于CrawlSpider類的全站數(shù)據(jù)爬取示例解析
這篇文章主要介紹了python爬蟲scrapy基于CrawlSpider類的全站數(shù)據(jù)爬取示例解析,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-02-02

