我正试图通过代理使用urllib2
;然而,在尝试使用urllib2
传递验证详细信息的几乎所有变体之后,我要么得到一个永远挂起且不返回任何内容的请求,要么得到407 Errors
。我可以使用连接到prox pac并相应重定向的浏览器连接到web fine;但是,我似乎无法通过命令行curl
、wget
、urllib2
等执行任何操作,即使我使用prox pac重定向到的代理。我尝试使用urllib2
将我的代理设置为pac文件中的所有代理,但都不起作用。
我当前的脚本如下:
import urllib2 as url
proxy = url.ProxyHandler({'http': 'username:password@my.proxy:8080'})
auth = url.HTTPBasicAuthHandler()
opener = url.build_opener(proxy, auth, url.HTTPHandler)
url.install_opener(opener)
url.urlopen("http://www.google.com/")
它抛出了HTTP Error 407: Proxy Authentication Required
,我也尝试了:
import urllib2 as url
handlePass = url.HTTPPasswordMgrWithDefaultRealm()
handlePass.add_password(None, "http://my.proxy:8080", "username", "password")
auth_handler = url.HTTPBasicAuthHandler(handlePass)
opener = url.build_opener(auth_handler)
url.install_opener(opener)
url.urlopen("http://www.google.com")
就像是curl
或wget
超时。
我需要做什么来诊断这个问题?我怎么可能通过浏览器而不是通过同一台计算机上的命令行使用看起来相同的代理和凭据进行连接?
可能和路由器有关吗?如果是,它如何区分浏览器HTTP
请求和命令行HTTP
请求?
目前没有回答
相关问题 更多 >
编程相关推荐