我想区分url是否使用ssl-certificate和url是否存在。 更详细地讲,如果我的客户仅使用不使用ssl证书的网址(例如www.google.com),则我要检查此url(例如www.google.com)是否未使用ssl证书。如果网址是错误的网址(例如,响应404错误),我要检查网址是错误的。
我使用aiohttp检查url是否错误。因为,我有很多需要检查的网址。 为了检查网址是否使用ssl,我尝试将所有网址转换为https,然后使用aiohttp.TCPConnector(ssl = False)连接aiohttp.ClientSession。 然后我检查session.get抛出错误。
headers = {
"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36"
}
async def check(row):
async with aiohttp.ClientSession(headers=headers, connector=aiohttp.TCPConnector(ssl=False, limit=None)) as session:
try:
async with session.get(url, allow_redirects=True) as resp:
print(resp)
if resp.status != 200:
err_list_ssl.add(row)
except Exception as e:
err_list_ssl.add(row)
此方法可以检查某些情况。但并非所有情况都一样(例如,如果转换为“ https”的网址是响应200)。 这是示例图片,该图片的网址未使用ssl但可以很好地打开。
真的,我不知道如何检查url是否使用ssl。
请,有人帮助我..