python - 如何修复 InsecureRequestWarning:正在向主机发出未经验证的 HTTPS 请求
问题描述
我正在尝试从 url 下载 zip 文件,但收到以下警告
InsecureRequestWarning: Unverified HTTPS request is being made to host 'www.ons.gov.uk'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
我读了一点,大多数线程都围绕如何禁用它(如果你知道你在做什么)和整体的一般概念。据我了解,库是否不能默认执行request
证书验证?为什么要对开源文件发出安全请求?我在这里暴露了一些东西,我该如何解决这个问题?
这是我的代码
import pandas as pd
import requests
from requests.auth import HTTPBasicAuth
from zipfile import ZipFile
import io
url = "https://www.ons.gov.uk/file?uri=%2fpeoplepopulationandcommunity%2fhousing%2fdatasets%2fukhousebuildingpermanentdwellingsstartedandcompleted%2fcurrent/ukhousebuilding.zip"
response = requests.get(url, headers={'User-Agent': 'Mozilla/5.0'}, verify=False)
with ZipFile(io.BytesIO(response.content)) as myzip:
with myzip.open(myzip.namelist()[0]) as hfile:
df = pd.read_csv(hfile)
print(df)
显然,此警告仅在我使用时出现verify=False
,它实际上不应该阻止此警告吗?
很抱歉问了太多问题,但我想了解这里发生了什么。如果我误解了这个概念,请纠正我。
解决方案
推荐阅读
- angular - 自动刷新角度分量
- vb.net - System.Runtime.InteropServices.COMException (0x800A1492)
- ios - 将collectionview添加到uitableviewcell并为tableview的特定单元重新加载数据
- node.js - nodejs,异步在减少,等待不等待承诺解决
- python - 当 Python 循环导入不可避免时,最好的解决方案是什么?
- php - 不确定如何修复 Host Gator 平台上的“警告:无法修改标头信息 - 标头已发送...”错误
- c# - 有没有办法在日志表中记录事务后立即在控制台中显示事务
- service-worker - 为什么会出现此错误:无法在“ServiceWorkerGlobalScope”上执行“fetch”:“only-if-cached”只能使用“same-origin”模式设置
- asp.net-core - GetDiscoveryDocumentAsync 找不到授权 url - IdentiyServer4
- python - 如何从 python 2.7 中将数据输入命令提示符