如何使用UDP協議給飛秋傳送訊息

2021-08-10 03:56:30 字數 1983 閱讀 7333

飛秋使用傳輸協議為udp

1、向區域網內某個ip好友的飛秋傳送訊息

# 1.先導入模組、建立乙個套接字

from socket import *

updsocket = socket(af_inet,sock_dgram)

# 2.設定接收方的ip位址和埠

# 飛秋的埠為:2425

data = (「192.168.75.75(這裡是接收方的ip)」,2425)

# 3.使用剛才建立的套接字呼叫sendto命令傳送訊息

updsocket.sendto("hahaha(這裡是要傳送的內容)",data)

# 需要注意的是如果傳送的內容是漢字的話,要進行轉換

name="哈哈哈"

updsocket.sendto(name.encode("utf-8或者gb23212"),data)

下面是物件導向程式設計

#指定乙個人的飛秋傳送一次性訊息

def one_to_one():

content=input("請輸入內容:")

msg="1:123456:user:name:32:"+content

ip="192.168.75."+data

updsocket.sendto(msg.encode("gb2312"),(ip,2425))

#指定乙個人的飛秋往死裡發

def one_to_one_again():

content=input("請輸入內容:")

msg="1:123456:user:name:32:"+content

ip="192.168.75."+data

while true:

updsocket.sendto(msg.encode("gb2312"),(ip,2425))

#指定區域網內所有飛秋進行傳送

def one_to_all():

content=input("請輸入內容:")

msg="1:123456:user:name:32:"+content

for i in range(255):

ip = "192.168.75."+ str(i)

updsocket.sendto(msg.encode("gb2312"),(ip,2425))

#指定區域網內所有飛秋狂發,容易把對方發宕機

def one_to_all_again():

content=input("請輸入內容:")

msg="1:123456:冰冰:範-pc:32:"+content

while true:

for i in range(255):

ip = "192.168.75." + str(i)

time.sleep(10)

updsocket.sendto(msg.encode("gb2312"),(ip,2425))

def main():

num = int(input("請輸入你想要使用的傳送方式:\n(1)一對一單次傳送訊息\n(2)一對一多次傳送訊息\n(3)對區域網內所有使用者單次傳送訊息\n(4)對區域網內所有使用者多次傳送訊息\n:"))

if num == 1:

one_to_one()

elif num == 2:

one_to_one_again()

elif num == 3:

one_to_all()

elif num == 4:

one_to_all_again()

else:

print("輸入錯誤")

if __name__ == "__main__":

main()

在udp聊天器裡如何給飛秋發訊息

使用udp協議來給飛秋發訊息過去,當知道飛秋的ip位址和埠號之後既可以使用udp來收發資料,但是給飛秋 傳送的訊息固定格式必須是 send msg 1 123456 傳送者的名稱 pc mac 32 傳送訊息的內容 import socket def main udp接收資料 建立套接字 soc s...

DNS使用的是TCP協議還是UDP協議

原文 dns同時占用udp和tcp埠53是公認的,這種單個應用協議同時使用兩種傳輸協議的情況在tcp ip棧也算是個另類。但很少有人知道dns分別在什麼情況下使用這兩種協議。先簡單介紹下tcp與udp。tcp是一種面向連線的協議,提供可靠的資料傳輸,一般服務質量要求比較高的情況,使用這個協議。udp...

tcp協議和udp協議的使用場景

一 什麼是tcp transmission control protocol,傳輸控制協議 tcp是面向連線的協議,也就是說,在收發資料前,必須和對方建立可靠的連線。乙個tcp連線必須要經過三次 對話 才能建立起來,其中的過程非常複雜,只簡單的描述下這三次對話的簡單過程 主機a向主機b發出連線請求資...