0
插座使用Perl中,我有以下子程序:翻譯到Python
use Socket
...
sub proxy_connect {
my $iaddr = Socket::inet_aton($proxy);
my $paddr = Socket::sockaddr_in(81, $iaddr);
my $proto = getprotobyname('tcp');
my $fh = new FileHandle;
socket($fh, PF_INET, SOCK_STREAM, $proto) or return;
connect($fh, $paddr) or return;
$fh->autoflush(1);
# return a pointer to file handle
return \$fh;
}
my $mysock = proxy_connect();
Python的方法是完全不同的,而不是返回一個文件對象我返回一個插座,但我不知道的功能完全一樣:
import socket
...
def proxy_connect():
"""
Connect to the proxy and return a filehandle for it.
"""
proxy = "proxy.mydomain.com"
address = socket.gethostbyname(proxy)
con = socket.socket(
socket.AF_INET, socket.SOCK_STREAM)
con.connect((address, 81))
return con
我在正確的路徑翻譯這tunnel-ssh-over-http? 請注意,我在Perl中是新手,這只是一個練習,用來學習更多關於Perl和套接字(Python)的東西。
'我的$跳頻=新的文件句柄;'應該是'我的$跳頻;'。再想一想,也許前者在12年前的5.6之前是需要的。 – ikegami