首頁  >  文章  >  後端開發  >  為什麼在使用 urllib.request 時出現「無法取得本機頒發者憑證」錯誤?

為什麼在使用 urllib.request 時出現「無法取得本機頒發者憑證」錯誤?

DDD
DDD原創
2024-11-03 19:36:03476瀏覽

Why Am I Getting

透過urllib 取得資料時無法取得本機核發者憑證

嘗試使用Python 的urllib.request 套件擷取資料時,您可能會擷取資料時,您可能會遇到以下錯誤:

certificate verify failed: unable to get local issuer certificate (_ssl.c:1045)

使用HTTPS URL 時可能會出現此問題,因為它表示驗證網站的SSL 憑證時出現問題。

要解決該錯誤,您已安裝“Install Certificates.command”實用程序,可以協助建立 SSL 憑證的信任鏈。在此過程中會發生以下情況:

  1. 信任鏈建立: 連接到HTTPS 網站時,您的瀏覽器或Python 程式會檢查網站的SSL 憑證以確保其真實性。此憑證由憑證授權單位 (CA) 頒發,該機構是負責驗證網站身分的受信任的第三方實體。
  2. 本機憑證儲存區:您的系統的預設憑證儲存區包含來自各個 CA 的可信任根憑證的集合。驗證網站憑證時,系統會檢查本機儲存體中頒發 CA 的根憑證。
  3. 缺少本地頒發者證書: 在某些情況下,頒發 CA 的根證書可能會未安裝在本地商店中。這可能會導致驗證過程失敗,從而導致您遇到的錯誤。
  4. 安裝憑證.command:透過執行提供的命令,您可以從作業系統的預設來源。這可確保您的系統擁有必要的受信任根憑證來驗證您嘗試造訪的網站的 SSL 憑證。

為了加深您對安全性和憑證的理解,您可以參考以下資源:

  • [使用SSL/TLS 的HTTP 和HTTPS 加密](https:// www.internetsociety.org/resources/deploy360/security/http-https-encryption-ssl-tls/)
  • [傻瓜式TLS/SSL 憑證](https://www.globalsign.com/en/ information-center/certificate-guides/ssl-certificates-in-五分鐘)
  • [憑證授權單位(CA)](https://www.digicert.com/learn/certificate-authority/)

以上是為什麼在使用 urllib.request 時出現「無法取得本機頒發者憑證」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn