udpを使用してwin 10の下のmNetAssist(一)に任意のデータを送信する

1396 ワード

udpを使用してwin 10の下のmNetAssistに任意のデータを送信
環境を報告します:win 10+pycharm+mNetAssistはwin 10がpycharmからmNetAssistにデータを伝えます
あまり話さないで,まずコードを入れなさい.
import socket


def main():

    #        
    udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

    #        
    send_data = input("          :")

    #          (        GBK /  GB2312)
    udp_socket.sendto(send_data.encode("GB2312"), ('100.89.194.133, 8080))  #      ip port

    #   
    udp_socket.close()


if __name__ == "__main__":

    main()

ループ送信を行うには、次のコードを使用します.
import socket


def main():

    #        
    udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    #     
    while True:
        #        
        send_data = input("          :")

        #         exit,     
        if send_data == "exit":
            break

        #          (GB2313     ,utf-8       )
        udp_socket.sendto(send_data.encode("GBK"), ('100.89.194.133', 8080))

    #   
    udp_socket.close()


if __name__ == "__main__":

    main()

注意事項
  • 1.ipアドレスバーはイーサネットのipv 4アドレス(接続が保証されている)をできるだけ書き、ローカル接続のipv 4であればOSError:[WinError 10051エラー]
  • が発生する可能性があります.
  • .ソケットを使用してデータを送信する場合、utf-8符号化フォーマットで送信すると、mNetAssistが漢字を出力する際に文字化けしが発生することが分かった.win 10はGBKフォーマットで符号化され、GB 2312またはGBKを使用すると漢字
  • が正常に出力されるためである.