我几乎没有使用Linux的经验,但我在我的Ubuntu机器上运行了一个服务,它将一个字符串从一种语言翻译成另一种语言。
该服务可以像echo "som input text" | nc 127.0.0.1 3333
一样使用,它输出"某些输入文本"的翻译。
现在,我想在我正在开发的Python程序中使用此服务,但我不知道如何执行此操作。我也很关注提供一个很长的文本作为输入。输入长度是否有限制?我正在考虑剥离引号的输入文本("
),以免引起任何混淆。
答案 0 :(得分:2)
要连接到TCP / IP服务,您需要打开socket。这不是(太多)依赖于操作系统,所有主要操作系统都支持这一点。
改编from the Python socket module documentation:
# Echo client program
import socket
HOST = '127.0.0.1' # The host
PORT = 3333 # The same port as used by the server
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((HOST, PORT))
s.sendall('Hello, world')
data = s.recv(1024)
s.close()
print 'Received', repr(data)
关于输入长度的潜在限制 - 这将完全取决于您的服务。 Python不应该在可用内存之外强加任何实际限制。