前陣子有個一起學習python的小伙伴在使用pip安裝包的時候出現(xiàn)了報錯?ValueError: check_hostname requires server_hostname
?。那么為什么會出現(xiàn)這個報錯呢?如何解決這個報錯呢?接下來就讓小編來教你如何解決這個pip報錯。
報錯代碼
解決方案
在網(wǎng)上流傳著兩種解決方案,小編這里記錄下,如果一種方案不行的話可以嘗試另一種:
檢查你的包版本
小編翻遍了相關(guān)問題的很多解決方案,大部分都是說這個包版本有問題,需要降版本安裝,也有一些小伙伴降版本安裝后就解決了,但小編覺得這個方案并不是正確的方案,只能說可能有其他錯誤碰巧也報這個錯誤代碼,然后碰巧可以解決吧?
檢查你的代理
有部分用戶說可能是代理有問題,關(guān)閉代理即可。小編的小伙伴嘗試了這個方法后就可以運行了,這應該是正確的方法。
其實由報錯的內(nèi)容就可以知道,pip要求你檢查你的host name,那就是你的主機地址有問題或者訪問地址有問題。
分析
出現(xiàn)這個錯誤的原因是使用了代理,由于總所周知的原因,有些外網(wǎng)需要一些特殊手段才能訪問,而要訪問這些網(wǎng)站就需要使用代理,小編的小伙伴當時就是代理沒有關(guān)掉,所以在pip的時候才會報錯。
為什么使用代理會出現(xiàn)這樣的錯誤呢,小編找到了蛛絲馬跡:pip的較新的版本有這樣的一個要求,就是標記對pip倉庫的信任,或者使用https進行數(shù)據(jù)傳輸(類似的問題小編在學習linux的時候也遇到過)。而使用代理會導致pip認為你請求的倉庫不是安全的,所以安裝失敗,所以解決方法就是關(guān)閉代理,或者在代理中設置相關(guān)內(nèi)容(觸及小編知識盲區(qū),小伙伴們可以去看看其他小編有沒有介紹代理使用的)。
小結(jié)
以上就是pip報錯?ValueError: check_hostname requires server_hostname
?的解決方案,更多pip使用上的問題可以關(guān)注W3Cschool。