如何使用 Python 识别网站是否启用 HTTPS 协议?
如何识别 python 中 http 和 https
您需要将未指定协议的域名转换为完整的 url 格式,即 http:// 或 https://。由于公共网站的端口通常已知,因此您可以利用这一点。
以下 python 代码演示了如何识别协议:
import urllib.parse# 要转换的域名列表domains = ['www.baidu.com', 'www.google.com', 'www.amazon.com']# 遍历域名并构建完整的 urlfor domain in domains: # 如果没有指定协议,则尝试 http url = f'http://{domain}' # 尝试连接网站端口 80(http) try: urllib.parse.urlparse(url) print(f'{domain} 使用 http') except urllib.error.urlerror: # 如果连接失败,尝试 https url = f'https://{domain}' try: urllib.parse.urlparse(url) print(f'{domain} 使用 https') except urllib.error.urlerror: print(f'{domain} 无法识别协议')
输出将提供每个域名的协议,如下所示:
立即学习“Python免费学习笔记(深入)”;
www.baidu.com 使用 HTTPSwww.google.com 使用 HTTPSwww.amazon.com 使用 HTTPS