ホームページ >バックエンド開発 >Python チュートリアル >TCP プロトコルに基づいてクライアントとサーバー間で中国語の自動応答チャット機能を実装するための Python+Socket の詳細な紹介
この記事では、TCPプロトコルに基づいてクライアントとサーバー間で中国語の自動応答チャット機能を実装するためのPython+Socketを主に紹介し、自動応答機能を備えたTCPチャットプログラムを実装するためのPython+Socketの関連操作方法と注意事項を分析します。必要な友達はそれを参考にしてください
この記事では、TCP プロトコルに基づいてクライアントとサーバー間で中国語の自動応答チャット機能を実装する Python+Socket の例について説明します。参考までに共有します。
【苦情】
インターネット上のコードは確実に人を殺すように書かれているようですが、実行するには問題があります。
コードが大好きでコードを集めるのが好きな友達の中には、他の人のコードを見つけると貼り付けたりコピーしたりする人もいます。でも、少なくとも実行してみることはできます、お兄さん
【本文】
昨日、UDP プロトコルを実行するように C/S チャット プログラムを修正しましたが、TCP プロトコルは機能しませんでした。様々な試練、様々な落とし穴。
次の変更を加えた後、最終的に機能します:
1. 送信された情報と受信された情報をそれぞれエンコードおよびデコードします
2. クライアントの 10 行目のバインドを変更して接続します (これは本当に大きな問題です、ピット! )
(この記事は Windows 7 + Python 3.4 に基づいています)
完全なコードは次のとおりです (保証、私が個人的にテストしました!):
サーバー側:
# tcp_server.py '''服务器''' from socket import * from time import ctime HOST = '' #主机地址 PORT = 23345 #端口号 BUFSIZ = 2048 #缓存区大小,单位是字节,这里设定了2K的缓冲区 ADDR = (HOST, PORT) #链接地址 tcpSerSock = socket(AF_INET, SOCK_STREAM) #创建一个TCP套接字 tcpSerSock.bind(ADDR) #绑定地址 tcpSerSock.listen(5) #最大连接数为5 while True: #无限循环 print('尝试连接客户端。。。') tcpCliSock, addr = tcpSerSock.accept() #等待接受连接 print('链接成功,客户端地址为:', addr) while True: data = tcpCliSock.recv(BUFSIZ) #接收数据,BUFSIZ是缓存区大小 if not data: break #如果data为空,则跳出循环 print(data.decode()) msg = '{} 服务器已接收 [自动回复]'.format(ctime()) tcpCliSock.send(msg.encode()) tcpCliSock.close() #关闭连接 tcpSerSock.close() #关闭服务器
クライアント側:
# tcp_client.py '''客户端''' from socket import * from time import ctime HOST = 'localhost' #主机地址 PORT = 23345 #端口号 BUFSIZ = 2048 #缓存区大小,单位是字节,这里设定了2K的缓冲区 ADDR = (HOST, PORT) #链接地址 tcpCliSock = socket(AF_INET, SOCK_STREAM) #创建一个TCP套接字 #tcpCliSock.bind(ADDR) #绑定地址 tcpCliSock.connect(ADDR) #绑定地址 while True: msg = input('请输入:') #输入数据 if not msg: break #如果 msg 为空,则跳出循环 tcpCliSock.send(msg.encode()) data = tcpCliSock.recv(BUFSIZ) #接收数据,BUFSIZ是缓存区大小 if not data: break #如果data为空,则跳出循环 print(data.decode())
【スクリーンショットの実行】
実験方法: 最初にサーバーを実行し、次にクライアントを実行します
その後、クライアント上でサーバーと自由にチャットできます:
以上がTCP プロトコルに基づいてクライアントとサーバー間で中国語の自動応答チャット機能を実装するための Python+Socket の詳細な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。