大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
本篇文章为大家展示了如何进行socket通信,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
为临潭等地区用户提供了全套网页设计制作服务,及临潭网站建设行业解决方案。主营业务为网站制作、成都网站建设、临潭网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!一、使用socket实现一对一的简单通信
socket就是一个开往网络应用必备的功能模块。通过这个模块我们可以自己写程序的server端和client端,可以自己定义server端对外提供服务器的ip地址和端口。学会使用这个模块的之后我们不仅可以开往网络程序,还可以利用socket模块开发出端口扫描的程序。
先看一段创建服务器端的代码
# -*- coding: utf-8 -*-
import socket
import os
#定义服务器端启动后要绑定的ip和端口
ip_port = ('0.0.0.0',9999)
# 创建socket对象并指定连接的网络类型和传输协议
sk=sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
#绑定ip和端口号
sk.bind(ip_port)
#启动监听,并设置最多可以通知连入连接数
sk.listen(5)
#用while使程序一直运行
while True:
#print 'server waiting...'
"""
进入accpet阻塞状态来等待客户端的连接请求
保存客户端的连接状态和客户端的地址
"""
conn,addr = sk.accept()
print addr
#如果有客户端发来请求就每次都只接受1024个字节的内容,注意recv()也是阻塞的
client_data = conn.recv(10240)
#打印从客户端接收到的字符串
print client_data ----客户端ip地址
#向客户端发送字符串
conn.sendall("I`m server")
#关闭连接
conn.close()
客户端代码
# -*- coding: utf-8 -*-