如何使用 python 无线连接到计算机
How do I wirelessly connect to a computer using python
我想知道是否有任何方法可以使用 python 的套接字库无线连接到 computer/server。 dir(socket) 带来了很多东西,我想帮忙整理一下。
不清楚你所说的 "Connect to a computer" 是什么意思,所以我给了你一个 TCP 套接字服务器和客户端。
在您希望 "connect to" 的计算机上创建套接字服务器:
import SocketServer
class MyTCPHandler(SocketServer.BaseRequestHandler):
def handle(self):
self.data = self.request.recv(1024).strip()
print "{} wrote:".format(self.client_address[0])
print self.data
self.request.sendall(self.data.upper())
if __name__ == "__main__":
HOST, PORT = "localhost", 9999
# Create the server, binding to localhost on port 9999
server = SocketServer.TCPServer((HOST, PORT), MyTCPHandler)
server.serve_forever()
现在创建客户端:
import socket
import sys
HOST, PORT = "localhost", 9999
data = " ".join(sys.argv[1:])
(SOCK_STREAM means a TCP socket)
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
try:
sock.connect((HOST, PORT))
sock.sendall(data + "\n")
received = sock.recv(1024)
finally:
sock.close()
print "Sent: {}".format(data)
print "Received: {}".format(received)
你 运行 服务器,然后是客户端,服务器应该接收客户端的连接,并将它作为服务器上的数据变量发送。资料来源:https://docs.python.org/2/library/socketserver.html
but one question. Is the socket server specific to python, or can
another language host and python connect or vise-versa?
只要您使用 sockets
- 您就可以连接到任何基于套接字的服务器(使用任何语言制作)。反之亦然:任何基于套接字的客户端都可以连接到您的服务器。此外,它是跨平台的:来自任何 OS 的基于套接字的客户端可以连接到任何基于套接字的服务器(来自任何 OS)。
我想知道是否有任何方法可以使用 python 的套接字库无线连接到 computer/server。 dir(socket) 带来了很多东西,我想帮忙整理一下。
不清楚你所说的 "Connect to a computer" 是什么意思,所以我给了你一个 TCP 套接字服务器和客户端。 在您希望 "connect to" 的计算机上创建套接字服务器:
import SocketServer
class MyTCPHandler(SocketServer.BaseRequestHandler):
def handle(self):
self.data = self.request.recv(1024).strip()
print "{} wrote:".format(self.client_address[0])
print self.data
self.request.sendall(self.data.upper())
if __name__ == "__main__":
HOST, PORT = "localhost", 9999
# Create the server, binding to localhost on port 9999
server = SocketServer.TCPServer((HOST, PORT), MyTCPHandler)
server.serve_forever()
现在创建客户端:
import socket
import sys
HOST, PORT = "localhost", 9999
data = " ".join(sys.argv[1:])
(SOCK_STREAM means a TCP socket)
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
try:
sock.connect((HOST, PORT))
sock.sendall(data + "\n")
received = sock.recv(1024)
finally:
sock.close()
print "Sent: {}".format(data)
print "Received: {}".format(received)
你 运行 服务器,然后是客户端,服务器应该接收客户端的连接,并将它作为服务器上的数据变量发送。资料来源:https://docs.python.org/2/library/socketserver.html
but one question. Is the socket server specific to python, or can another language host and python connect or vise-versa?
只要您使用 sockets
- 您就可以连接到任何基于套接字的服务器(使用任何语言制作)。反之亦然:任何基于套接字的客户端都可以连接到您的服务器。此外,它是跨平台的:来自任何 OS 的基于套接字的客户端可以连接到任何基于套接字的服务器(来自任何 OS)。