首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在python中检查域名是否有ssl证书?

在Python中,您可以使用ssl库和socket库来检查域名是否有SSL证书

代码语言:javascript
复制
import ssl
import socket

def check_ssl_certificate(domain, port=443):
    context = ssl.create_default_context()
    try:
        with socket.create_connection((domain, port)) as sock:
            with context.wrap_socket(sock, server_hostname=domain) as ssock:
                certificate = ssock.getpeercert()
                if certificate:
                    print(f"域名 {domain} 具有 SSL 证书")
                else:
                    print(f"域名 {domain} 没有 SSL 证书")
    except Exception as e:
        print(f"无法检查域名 {domain} 的 SSL 证书: {e}")

# 使用示例
check_ssl_certificate("example.com")

这个函数通过尝试建立一个到指定端口(默认为443,这是HTTPS的默认端口)的SSL连接来检查域名是否有SSL证书。如果连接成功并获取到证书,函数会输出域名具有SSL证书,否则输出没有SSL证书。如果在尝试连接过程中发生任何异常(例如域名无法解析、连接超时等),函数会捕获并输出异常信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券