python 读取文件夹中 从阿里云导出后的域名excel 判断域名 ssl 过期

import os
import ssl
import socket
import requestsfrom openpyxl import load_workbook
from dateutil import parserimport pytz
import datetimeimport requests.packages.urllib3.util.ssl_import warnings
warnings.filterwarnings('ignore')requests.packages.urllib3.util.ssl_.DEFAULT_CIPHERS = 'ALL'def get_domain_content(domain):requests.packages.urllib3.disable_warnings()url = 'https://' + domainresponse = requests.get(url, verify=False).headersprint(response)def get_my_domain(mydomain):try:my_addr = socket.getaddrinfo(mydomain, None)c = ssl.create_default_context()s = c.wrap_socket(socket.socket(), server_hostname=mydomain)s.connect((mydomain, 443))my_cert = s.getpeercert()get_my_cert_dated(mydomain, my_cert, my_addr)# except ssl.CertificateError and socket.gaierror as e:except (OSError, ValueError):print(mydomain)passdef get_my_cert_dated(domain, certs, my_addr):cert_beginning_time = parser.parse(certs['notBefore']).astimezone(pytz.utc)cert_end_time = parser.parse(certs['notAfter']).astimezone(pytz.utc)time1 = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")time2 = cert_end_timeres = compare_time(time1, time2)if res == True:print('\033[0;37;41m%s 失效时间: %s \033[0m' % (domain, cert_end_time))  # my_addr[0][4][0]  #cert_beginning_time,else:print('%s 失效时间: %s ' % (domain, cert_end_time))  # my_addr[0][4][0]  #cert_beginning_time,def compare_time(time1, time2):d1 = datetime.datetime.strptime(time1, '%Y-%m-%d %H:%M:%S')d2 = datetime.datetime.strptime(time2.strftime('%Y-%m-%d %H:%M:%S'), '%Y-%m-%d %H:%M:%S')delta = d1 - d2print("days is %s", delta.days)if abs(delta.days) <= 60:return Trueelse:return Falsedef all_path(dirname):result = []  # 所有的文件for maindir, subdir, file_name_list in os.walk(dirname):for filename in file_name_list:apath = os.path.join(maindir, filename)result.append(apath)return resultdef getFilesInDir(dirname):res = all_path(dirname)files = []for filename in res:# print(filename)files.append(filename)return filesdef read_excel(filename):basename = os.path.basename(filename)print(basename)bsname = os.path.splitext(basename)relname = bsname[0]wb = load_workbook(filename=filename)# 获取当前活跃的worksheet,默认就是第一个worksheet# ws = wb.activesheets = wb.sheetnamessheet_first = sheets[0]ws = wb[sheet_first]# print(ws.cell('A1').value)# print(ws.cell(row=1, column=1).value)rows = ws.rowscolumns = ws.columnsfor row in rows:# line = [col.value for col in row]# print(line)if row[0].value == "A" or row[0].value == "CNAME":predomain = row[1].valueif predomain != "@" and predomain != "" and predomain != "*" :reldomain = predomain + "." + relname# print(reldomain)get_my_domain(reldomain)# for col in row:#     print(col.value)def read_domain_files():# domaintxt = 'domain.txt';# domaintxt = 'domain.txt';# NO 1. read files from excel in dirfiles = getFilesInDir("D:\\project\\python\\domains")# print(files)for filename in files:read_excel(filename)return# NO2. only A and CNAME# NO3. in filename and zhujiwith open(domaintxt, 'r', encoding="utf-8") as file:for domain in file:# time.sleep(1);if domain.strip() != '':get_my_domain(domain.strip())else:print(domain)if __name__ == "__main__":read_domain_files()print('finish')

python 批量域名证书过期查找(二),从阿里云导出后的文件夹中的excel查找相关推荐

  1. python打不开xls文件,wps下用vba实现合并文件夹中所有excel文件

    python打不开xls文件,用wps下vba解决问题 用了常用的三种python读写xls文件的方法都报错 xlrd openpyxl pandas 原因 解决方法 用vba实现合并文件夹中所有ex ...

  2. python批量jpg转png(顺序排列1.2.3……)、修改文件夹尺寸

    1.python批量修改文件夹jpg转png图片(顺序排列1.2.3--) import os files = os.listdir("D:/Backup/桌面/777") #会按 ...

  3. python读取文件名存到list_批量读取文件夹中的文件名

    问题:批量读取文件夹中的文件名 方法1 Windows批处理方法 在文件夹下新建一个txt文本文档,写入: DIR *.* /B >LIST.TXT 保存后修改文件名后缀为.bat,双击运行后, ...

  4. 如何批量导入不同文件夹中的图片

    在标签设计印刷工作中,批量导入图片已经是非常普遍的功能了.不论图片名称是否有规律或者是否有在数据库中保存,经过一些专业的设置都可以实现批量导入.那么如果是不同文件夹中的图片该如何导入呢? 文件夹中图片 ...

  5. Excel表格怎么批量导出图片将文件中的图片导出到文件夹中

    这几天一直没写博文,但是为了让大山的孩子,能够像京城的富二代一样,可以开开心心公公平平地享受学习excel的权利,因此决定今天继续写,今天主要来谈谈excel图片批量导出,关于excel表格怎么批量导 ...

  6. 手把手教你用Python批量实现文件夹下所有Excel文件的第二张表合并

    点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 怀君属秋夜,散步咏凉天. 大家好, ...

  7. 使用Python批量删除windows下特定目录的N天前的旧文件实战:Windows下批量删除旧文件、清除缓存文件、解救C盘、拒绝C盘爆炸

    使用Python批量删除windows下特定目录的N天前的旧文件实战:Windows下批量删除旧文件.清除缓存文件.解救C盘.拒绝C盘爆炸 目录

  8. python 文件夹中的文件批量处理 高通道tif图片转换成jpg格式

    在数据集的制作中,往往涉及到 文件夹中文件的批量处理操作,而首要的任务便是将获得的数据进行重命名以方便批量读取,随后再进行操作. 一.文件批量重命名 文件夹的批量处理操作关键在于用os库的os.lis ...

  9. 【批量改文件夹中的图片名称-python】

    批量改文件夹中的图片名称-python(记录) 目的 最近在制作零件数据集标注时,发现在摄像机中拍摄的图片名称是乱码的,不便于进行数据标注,所以写下这段代码,以便日后再次使用. 转换之前图片文件夹中的 ...

最新文章

  1. 006-SDK框架之LYWSDKInterfaceProtocol.h
  2. 小米2+android版本,小米2S能刷Android4.4系统吗 小米2S刷Android4.4.2教程
  3. UA MATH566 统计理论 Bayes统计基础
  4. Java设计模式(16)中介模式(Mediator模式)
  5. 现代密码学1.3--古典密码/historical cipher
  6. 豪横!程序员搭个人博客,一个 GitHub 账号足矣!
  7. Flex与Javascript交互
  8. 教你如何用Harbor 私有镜像仓库搭建
  9. 为什么要学习Java EE?需要掌握哪些技能?
  10. Maven:IDEA 使用maven 下载源码包
  11. 30分钟快速上手Docker,看这篇就对了!
  12. CentOS 7 配置网络连接
  13. Leetcode 863.二叉树中所有距离为K的结点
  14. 群晖消息通知 推送服务器,群晖resync服务器
  15. 手机弹奏计算机音乐的软件,APP推荐:11款简单好用工具的APP,一定要懂!
  16. JS睡眠sleep()
  17. PIL imagefont 添加下划线
  18. 全网疯传!最新高频100题汇总(附答案详解)
  19. 计算机l符号代表什么意思,衣服sml代表什么意思 分别是什么的标记
  20. 有位置,来,搬个小板凳,喝酒听故事!

热门文章

  1. FGK adaptive Huffman encode to compress file
  2. github errno 10054
  3. [计算机网络]:DNSSEC原理
  4. 上古世纪服务器维护真情礼,11月9日例行维护暨版本更新公告
  5. Node 中的 Buffer 对象
  6. 知瓜数据丨2021医美行业数据趋势分析报告
  7. 机器学习之分类模型(二)——决策树
  8. OpenGL-第一个三角形与矩形(两个三角形)
  9. 实验三 Microwindows的配置和安装实验
  10. 零基础如何成功转行数据分析?!