2021年10月1日 星期五

Python-Server、Client使用Stock傳訊息

Server 執行後等待Clinet傳送訊息,Client傳送訊息後,Server接後到訊息印出且回傳收到。



Server:

 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import socket

Host = '127.0.0.1'
Port = 8000

#設定IP4連結及TCP/IP連結方式。
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as sock:
sock.bind((Host, Port))
print(Host,':'+ str(Port) + ' Wait for connection.....')
sock.listen(1)
#等待連結。
conn, ClientIp = sock.accept()
print('Client:' + str(ClientIp))

while True:
#接收訊息。
data = conn.recv(1024)
#印出接收到的訊息內容。
print('receive: ' , data.decode())
#回傳訊息表示收到。
conn.send('received'.encode())

Client:

 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import socket

Host = '127.0.0.1'
Port = 8000

with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:

try:
#判斷Server是否可以連線,無法連線錯誤碼10061。
if s.connect_ex((Host, Port))==10061:
print('無法連線')
else:
while True:
#輸入要傳送的資料。
Indata = input('Input message: ')
#印出傳送的訊息。
#rint('send: ' + Indata)
#傳送輸入的訊息到Server。
s.send(Indata.encode())
#接收Server回傳訊息。
data = s.recv(1024)
#印出收到訊息。
print(data.decode())
except Exception as e:
print(f'An Error occurred:',e)


沒有留言:

張貼留言

Ubuntu-Journalctl查看系統日誌

 近期所使用Ubuntu系統24小時開著,進行跑Python程式使用,但跑個2~3天,排程就無法正常寄信,SSH連線也無法正常連線,經查看後為wifi連線問題,暫先使用腳本排程進行重開wifi。 以下為記錄Journalctl指令。 使用Journalctl來從系統日誌上查看看問...