2014-09-24 475 views
0

下捲曲作品:Python的請求與代理407狀態碼,即使捲曲工作

curl -vx proxy.example.com:8010 -U user:pass http://example.com 

而且隨着200

但是響應代碼返回有效的內容,通過Python請求庫中使用相同的憑據產生一個407狀態碼(認證錯誤)。在查看日誌時,它看起來像用戶從未通過(未定義)。

url = "http://example.com" 
proxies = {'http': 'http://proxy.example.com:8010'} 
auth = HTTPProxyAuth("user", "pass") 

resp = requests.get(url, proxies=proxies, auth=auth) 

我正在使用請求庫2.3.0。

+1

也許你的代理使用不是基本認證,而是使用摘要認證?請參閱[如何通過使用python requests模塊](http://stackoverflow.com/q/13506455)傳遞代理身份驗證(需要摘要身份驗證) – 2014-09-24 18:28:40

回答

2

最終,問題是通過在URL中使用「https」而不是「http」來解決的。

我只能推測爲什麼這是解決方案:也許它是一個不同版本的請求庫或一些錯誤?我將研究這些問題,看看爲什麼這會起作用。