我正在尝试从 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
Run Code Online (Sandbox Code Playgroud)
我读了一点关于这一点的内容,大多数线程都围绕如何禁用它(如果您知道自己在做什么)以及整个一般概念。据我了解,库默认情况下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)
Run Code Online (Sandbox Code Playgroud)
显然这个警告只在我使用时出现verify=False,它实际上不应该阻止这个警告吗?
抱歉问了太多问题,但我想了解这里发生的事情。如果我误解了这个概念,请纠正我。