python - 基本 Python 客户端套接字示例

标签 python sockets networking

我一直在尝试了解套接字是如何工作的,并且我一直在尝试分解我在 this page 找到的一些示例代码对于一个非常简单的客户端套接字程序。由于这是基本示例代码,我认为它没有错误,但是当我尝试编译它时,我收到以下错误消息。

File "client.py", line 4, in client_socket.connect(('localhost', 5000)) File "", line 1, in connect socket.error: [Errno 111] Connection refused

我几乎用谷歌搜索了这个错误的每个部分,遇到类似问题的人似乎通过更改端口号、使用“连接”而不是“绑定(bind)”以及其他一些事情得到了帮助,但它们都不适用于我的情况。非常感谢任何帮助,因为我对网络编程很陌生,对 python 也很陌生。

顺便说一下,如果链接由于某种原因不起作用,这里是代码。

#client example
import socket
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client_socket.connect(('localhost', 5000))
while 1:
    data = client_socket.recv(512)
    if ( data == 'q' or data == 'Q'):
        client_socket.close()
        break;
    else:
        print "RECIEVED:" , data
        data = raw_input ( "SEND( TYPE q or Q to Quit):" )
        if (data <> 'Q' and data <> 'q'):
            client_socket.send(data)
        else:
            client_socket.send(data)
            client_socket.close()
            break;

最佳答案

这是最简单的python套接字示例。

服务器端:

import socket

serversocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
serversocket.bind(('localhost', 8089))
serversocket.listen(5) # become a server socket, maximum 5 connections

while True:
    connection, address = serversocket.accept()
    buf = connection.recv(64)
    if len(buf) > 0:
        print buf
        break

客户端:

import socket

clientsocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
clientsocket.connect(('localhost', 8089))
clientsocket.send('hello')
  • 首先运行 SocketServer.py,并确保服务器已准备好监听/接收某事
  • 然后客户端向服务器发送信息;
  • 服务器收到某事后,终止

关于python - 基本 Python 客户端套接字示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7749341/

相关文章:

python - 在 Tensorflow 中使用迭代器时如何正确设置 is_training

C - 使用 select 监听多个端口的简单 ipv6 udp 服务器。从一个端口而不是另一个端口接收消息

Python 3 - Urllib3 读取互联网广播元数据

python - 在虚拟环境中使用 Apt-Get Python 包

c - 如何将 fprintf 输出重定向到 C 套接字?

c - 传输端点未连接,连接失败()

python - 如何使用 scapy 欺骗 UDP 数据包中的 IP 地址

ruby - ruby中两个网络掩码的总和

python - Raspberry Pi(Raspbian Linux 风格)在 wifi 上运行脚本

c# - 在 IronPython 中使用 C# 代码