UDPで書かれたコードをTCPに書き直したい


以下の記事にて紹介されているPythonのUDP通信のサンプルを  
TCPに書き直したいです。

[PythonによるUDP通信 - Qiita](https://qiita.com/akakou/items/e9fbcfc0c69cc957152e)

SOCK_DGRAMをSOCK_STREAMに書き換えるだけではエラーが出て動きませんでした。

**TCPSend.py**

[code]

    from socket import socket, AF_INET, SOCK_STREAM
    
    HOST = ''
    PORT = 5000
    ADDRESS = "127.0.0.1"
    
    s = socket(AF_INET, SOCK_STREAM)
    
    while True:
        msg = 'print("test")\n'
        s.sendto(msg.encode(), (ADDRESS, PORT))
    s.close()
    
[/code]

**TCPRecieve.py**

[code]

    from socket import socket, AF_INET, SOCK_STREAM
    
    HOST = ''
    PORT = 5000
    
    s = socket(AF_INET, SOCK_STREAM)
    s.bind((HOST, PORT))
    
    while True:
        msg, address = s.recvfrom(8192)
        exec(msg.decode('utf-8'))
    
    s.close()
    
[/code]

エラー内容は以下の通りです。

[code]

    UDPSend.py", line 11, in <module>
        s.sendto(msg.encode(), (ADDRESS, PORT))
    OSError: [WinError 10057] ソケットが接続されていないか、sendto 呼び出しを使ってデータグラム ソケットで送信するときにアドレスが指定されていないため、データの送受信を要求することは禁じられています。
    
[/code]

SOCK_DGRAM、SOCK_STREAMの箇所以外にどこを書き換えればUDPからTCPにできるのでしょうか？




公式ドキュメントにTCPでの送信側と受信側のコード例があります。  
<https://docs.python.org/ja/3/library/socket.html#example>




公式ドキュメントにTCPでの送信側と受信側のコード例があります。  
<https://docs.python.org/ja/3/library/socket.html#example>

