python socket模块

基于网络的套接字:AF_INET有两种协议,面向连接的协议TCP: SOCK_STREM,
无连接的协议UDP:SOCK_DGRAM

服务端:
socket.socket():创建套接字socket.AF_INET,socket.SOCT_STREAM
socket.bind():绑定地址(IP地址和端口号)到套接字
socket.listen():开始TCP监听
socket.accept():被动接受客户端连接,(阻塞式)等待连接的到来

一个简单服务端

#coding:utf-8
import socket, time
#创建基于网络套接字的TCP连接
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM )
s.bind((‘0.0.0.0‘, 1234))
s.listen()
while True:
    print ‘start......‘
    sockobj, addr=s.accept()
    print ‘client IP:‘ , addr
    while True:
        data=sockobj.recv(1024)
        if not data:
            break
        sockobj.send(str(time.time()))
    sockobj.close()
s.close()

客户端

socket.connect():主动初始化服务器的连接
socket.connect_ex():connect的扩展版本,出错时返回错误码,而不是抛出异常

#coding:utf-8
import socket
host=(‘192.168.1.102‘, 1234)
c=socket.socket(socket.AF_INET, socket.SOCK_STREAM)
c.connect(host)
while True:
    mesg=raw_input("send>:")
    c.send(mesg)
    data=c.recv(1024)
    print data

c.cloce()
时间: 2024-08-08 22:10:07

python socket模块的相关文章

Python socket模块实现TCP服务端客户端

Python socket模块实现TCP服务端客户端 写了详细的注释,如果有哪一行不明白,可留言哦. 服务端脚本 # _*_ coding: utf-8 _*_ __author__ = 'xiaoke' __date__ = '2018/6/13 14:39' # 这个脚本创建一个TCP服务器,它接收来自客户端的消息,然后将消息加上时间戳前缀并返回客户端 import socket from time import ctime HOST = '' PORT = 21567 BUFSIZ = 4

python——socket模块与列表映射

从socket模块学习中的一段奇怪代码说起 前言:在学习python标准库中的Socket模块中,发现了一段奇怪的代码. import socket def get_constants(prefix): dicts=dict((getattr(socket,n),n) for n in dir(socket) if n.startswith('IPPROTO_')) print (dicts) 疑问:上述代码中的for..in..循环语句和if 语句都没有冒号结束.为什么? 答案:因为上述“异常

python socket模块:TCP,UDP客户端

__author__ = 'Administrator' import socket # tcp客户端 target_host = 'www.51cto.com' target_port = 80 # AF_INET是标准IPv4地址或主机名,SOCK_STREAM表示是TCP的方式 client = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 建立连接 client.connect((target_host, target_port)

用python socket模块实现简单的文件下载

server端: # ftp server端 import socket, os, time server = socket.socket() server.bind(("localhost", 8080)) server.listen() while True: conn, addr = server.accept() print("连接到客户端:", addr) while True: try: # windows会直接报错,需要捕获异常 data = conn

python socket和HTTP入门

python迭代器: iterator=iter(obj) iterator.next() python函数: def function(*args): 传元组列表参数. def function(**args): 传字典列表参数. Django时区设置:setting.py里面的time_zone=Asian/Shanghai PostgreSQL时区设置:postgres.conf配置文件修改time_zone=Asian/Shanghai python socket模块: 服务器端: im

Python Socket Client及Server简单编程

本文主要介绍使用Python语言编写Socket协议Server及Client的简单实现方法. 1. Python Socket编程简介 Socket通常也称作"套接字",应用程序通常通过"套接字"向网络发出请求或者应答网络请求. 三种流行的套接字类型是:stream,datagram和raw.stream和datagram套接字可以直接与TCP协议进行接口,而raw套接字则接口到IP协议. Python Socket模块提供了对低层BSD套接字样式网络的访问,使用

python之socket模块

UDP client #!/usr/bin/env python2.7 #-*-coding:utf-8 -*- import socket s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM) s.sendto("hello",("localhost",8001)) data,addr = s.recvfrom(1024) print "receive data:%s from %s" % (dat

Python中的socket 模块

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

python 学习笔记day09-pythonz正则表达式、socket模块

RE模块 核心函数和方法 match函数 尝试用正则表达式模式从字符串的开头匹配,如果匹配成功,则返回一个匹配对象,否则返回None >>> re.match('foo','food')   #在food 搜索foo             <_sre.SRE_Match object at 0xb70babb8>            >>> m = re.match('foo','food')            >>> m.grou