파이썬 소켓 라이브러리를 사용하여 컴퓨터/서버에 무선으로 연결할 수있는 방법이 있는지 궁금합니다. dir (소켓)은 많은 것을 가져 왔고 그것을 정렬하는 데 도움이 필요했습니다.어떻게 파이썬을 사용하여 컴퓨터에 무선으로 연결합니까?
1
A
답변
0
"컴퓨터에 연결"이란 의미가 명확하지 않으므로 TCP 소켓 서버와 클라이언트를 제공했습니다. 클라이언트와 서버를 받아야
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)
당신은 다음 서버를 실행
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()
지금 클라이언트를 만듭니다 당신이 "연결"하려는 컴퓨터에 소켓 서버 만들기 클라이언트의 연결을 설정하고 서버의 데이터 변수로 가지고있는 모든 것을 보내십시오. 출처 : https://docs.python.org/2/library/socketserver.html
1
하나의 질문. 소켓 서버가 파이썬과 관련이 있습니까? 다른 언어 호스트와 파이썬이 연결되거나 그 반대 일 수 있습니까?
sockets
을 사용하는 한 모든 소켓 기반 서버 (모든 언어로 작성)에 연결할 수 있습니다. 그 반대의 경우 : 소켓 기반 클라이언트는 서버에 연결할 수 있습니다. 또한 크로스 플랫폼입니다. 모든 OS의 소켓 기반 클라이언트는 모든 OS 기반의 모든 소켓 기반 서버에 연결할 수 있습니다.
+0
매우 도움이됩니다. 고맙습니다. – GreenHawk1220
대답 해 주셔서 감사합니다. 매우 설명했지만 한 가지 질문이었습니다. 소켓 서버가 파이썬에만 해당합니까? 아니면 다른 언어 호스트와 파이썬이 연결되어 있거나 그 반대 일 수 있습니까? – GreenHawk1220
저는 파이썬이 호스트 할 수 있고 다른 프로그램이 연결할 수 있다고 믿습니다. 그렇습니다. 문제 없어! – Qwerty