无法使用urllib和代理访问网站

时间:2011-02-15 16:16:59

标签: python proxy urllib ssh-tunnel

我用ssh -D localhost:5678 me@server.com打开了一个ssh隧道,我想在我的python3应用程序中使用它。

#!/usr/bin/python3.1
# -*- coding:Utf-8 -*-

import urllib.request

proxyhand = urllib.request.ProxyHandler({"socks" : "http://localhost:5678"})
opener = urllib.request.build_opener(proxyhand)
page = opener.open("http://www.mysite.com")

只能通过server.com上的网络访问mysite.com(这就是我使用ssh隧道的原因)。

它可以访问任何其他网站,没有任何限制,但对于mysite.com我有一个连接超时错误。隧道工作正常,因为我可以使用firefox配置as explained here访问mysite.com。

谢谢

1 个答案:

答案 0 :(得分:0)

您是否应该使用http作为协议,而不是socks?因此:

proxyhand = urllib.request.ProxyHandler({"http" : "http://localhost:5678"})