初始Socket编程(python)

通信双方要有一个服务端和一个客户端,所以要分开去写代码。

所以我创建了两个py程序,第一个是服务端:iServer.py 和客户端 iClient.py

服务端:

#coding:utf-8
from socket import *
s = socket(AF_INET,SOCK_STREAM)  #建立一个服务器socket对象  ,类似与买了一个电话的过程,AF_INET是是 IPv4 网络协议的套接字类型,而SOCK_STREAM为TCP协议
s.bind((‘‘,6666))   #bind为绑定,第一个‘’为地址,而这里就是本地所以不用写地址号,而6666为端口号

s.listen(1)     #设置服务器socket的请求队列长度  
s.accept()
sock,addr = s.accept()   ##开始监听服务器socket端口,可以有多个线程来一起监控  
print "Connect by",addr
sock.send(‘welcome,this is server‘)

text = sock.recv(1024)
print text
sock.close()
s.close()

客户端:

#coding:utf-8
from socket import *

c=socket(AF_INET,SOCK_STREAM)
c.connect((‘127.0.0.1‘,6666))
text = c.recv(1024)
print text

c.send(‘hello,i am client‘)

c.close()

在cmd里运行即可。可以实现一句话通信的过程,不过目前仅限于本地上的测试,之后我会一步一步的实现更复杂的功能,不断努力。

时间: 2025-01-06 10:10:04

初始Socket编程(python)的相关文章

python Socket编程-python API 与 Linux Socket API之间的关系

python socket编程 服务端 #!/usr/bin/env python # coding=utf-8 from socket import * HOST = '' PORT = 2345 BUFSIZE = 1024 ADDR = (HOST,PORT) #创建AF_INET地址族,TCP的套接字 with socket(AF_INET,SOCK_STREAM) as tcpSerSock: #绑定ip和端口 tcpSerSock.bind(ADDR) #监听端口,是否有请求 tcp

第一个socket编程(python)

因为要支持服务器端运行,我采用linux,支持多个终端运行,如果直接在IDE上运行不能同时运行服务器端和客户端 1:首先要知道怎么在终端运行python脚本程序 $ chmod a+x helloworld.py $ ./helloworld.py Hello World chmod命令用来 改变 文件的 模式 ,给系统中所有用户这个源文件的执行许可.然后我们可以直接通过指定源文件的位置来执行程序.我们使用./来指示程序位于当前目录. 2: 必须在源程序指定python目录,不知道python执

【转】一个简单的python socket编程

原文链接:转载:一个简单的python socket编程 python 编写server的步骤: 1. 第一步是创建socket对象.调用socket构造函数.如: socket = socket.socket( family, type ) family参数代表地址家族,可为AF_INET或AF_UNIX.AF_INET家族包括Internet地址,AF_UNIX家族用于同一台机器上的进程间通信.      type参数代表套接字类型,可为SOCK_STREAM(流套接字)和SOCK_DGRA

Python Socket 编程——聊天室演示样例程序

上一篇 我们学习了简单的 Python TCP Socket 编程,通过分别写服务端和client的代码了解主要的 Python Socket 编程模型.本文再通过一个样例来加强一下对 Socket 编程的理解. 聊天室程序需求 我们要实现的是简单的聊天室的样例,就是同意多个人同一时候一起聊天.每一个人发送的消息全部人都能接收到,类似于 QQ 群的功能,而不是点对点的 QQ 好友之间的聊天.例如以下图: 图来自:http://www.ibm.com/developerworks/linux/tu

Python基础-第七天-面向对象编程进阶和Socket编程简介

本篇内容: 1.面向对象编程进阶-静态方法 2.面向对象编程进阶-类方法 3.面向对象编程进阶-属性方法 4.面向对象编程进阶-特殊成员(内置方法) 5.面向对象编程进阶-反射 6.异常处理.断言 7.Socket编程简介 一.面向对象编程进阶-静态方法 1.静态方法的实现 通过@staticmethod装饰器可以把其装饰的方法变为一个静态方法: 变成静态方法后,形参中可以不用写self了.如果写了self,默认是不会把对象本身传递给self,需要手动传递: class Dog(object):

Python 3 socket编程

Python 3 socket编程 一 客户端/服务器架构 互联网中处处是C/S架构 1.C/S结构,即Client/Server(客户端/服务器)结构 2.在互联网中处处可见c/s架构 比如说浏览器,在线视频,各种社交软件. C/S架构与socket的关系: 我们学习socket就是为了c/s架构的开发 学习socket一定要先学习互联网协议: 1.如何基于socket编程,来开发一款自己的C/S架构软件 2..C/S架构的软件(软件属于应用层)是基于网络进行通信的 3.网络的核心即一堆协议,

python socket编程详细介绍

Python 提供了两个基本的 socket 模块. 第一个是 Socket,它提供了标准的 BSD Sockets API. 第二个是 SocketServer, 它提供了服务器中心类,可以简化网络服务器的开发. 下面讲的是Socket模块功能 1.Socket 类型 套接字格式: socket(family,type[,protocal]) 使用给定的地址族.套接字类型.协议编号(默认为0)来创建套接字. socket类型 描述 socket.AF_UNIX 只能够用于单一的Unix系统进程

python socket编程入门(编写server实例)+send 与sendall的区别与使用方法

python 编写server的步骤: 1. 第一步是创建socket对象.调用socket构造函数.如: socket = socket.socket( family, type ) family参数代表地址家族,可为AF_INET或AF_UNIX.AF_INET家族包括Internet地址,AF_UNIX家族用于同一台机器上的进程间通信. type参数代表套接字类型,可为SOCK_STREAM(流套接字)和SOCK_DGRAM(数据报套接字). 2. 第二步是将socket绑定到指定地址.这

python基础之socket编程

python基础之socket编程   一 TCP/IP五层模型 在每一层都工作着不同的设备,比如我们常用的交换机就工作在数据链路层的,一般的路由器是工作在网络层的. 在每一层实现的协议也各不同,即每一层的服务也不同.下图列出了每层主要的协议. 各层功能 注明:ARP和RAPR两个到底属于哪一层呢? 由于IP协议使用了ARP协议,所以经常把ARP协议划到网络层,但是ARP协议是为了从网络层使用的IP地址解析出在数据链路层使用的MAC地址,所以有些地方也把ARP协议划分到数据链路层,但是一般情况下