我用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。
谢谢
答案 0 :(得分:0)
您是否应该使用http
作为协议,而不是socks
?因此:
proxyhand = urllib.request.ProxyHandler({"http" : "http://localhost:5678"})