- 浏览: 569371 次
- 性别:
- 来自: 苏州
文章分类
- 全部博客 (206)
- Flask (1)
- JavaScript (3)
- Core Java (41)
- XML (1)
- Oracle (11)
- 软件安装及环境配置 (0)
- 其它 (9)
- 面试/笔试 (5)
- 项目 (0)
- JDBC (11)
- Servlet (4)
- MySql (4)
- JNDI (0)
- Hibernate (11)
- Java模式和构架设计 (0)
- Web设计 (22)
- JSP (8)
- Struts (13)
- Tomcat (2)
- Marven (2)
- SVN (2)
- Swing/AWT (1)
- jQuery (2)
- ExtJS (8)
- Python (22)
- Flex (1)
- Django (7)
- 算法 (5)
- English (1)
- Twisted (1)
- Linux (3)
- Rails (1)
- SVG (3)
- PostgreSQL (1)
1.socket(family, type)
创建套接字对象,family=socket.AF_INET, type=socket.SOCK_STREAM(TCP)/socket.SOCK_DGRAM(UDP)
2.s.bind((host, port))
绑定套接字s以接收来自主机host在端口号port上的连接。host可以是空字符串(''),表示接受来自任何主机的连接。
3.s.listen(maxpending)
监听到该套接字的连接尝试,任何时候允许最多maxpending个排队的连接尝试。
4.s.accept()
s必须是TCP类型,接收一个连接请求并返回一个数据对(s1, (ipaddress, port))。s1是一个新连接的套接字。调用之前必须已经调用了s.bind和s.listen方法。
5.s.recv(bufsize)
从套接字接收最多bufsize个字节的数据,并返回一个由接收的数据组成的字符串。
6.s.sendall(string)
在套接字上按字节发送string字符串,该方法将会阻塞,直到所有的字节都被发送。
7.s.close()
关闭套接字。
8.s.recvfrom(bufsize)
从套接字接收最多bufsize个字节的数据,并返回一个元组(data, (ipaddr, port))。在使用UDP时很有用,可以接收来自多个发送方的数据。
9.s.sendto(string, (host,port))
在套接字上将string字符串按照字节发送到目的host和port上,并返回发送的字节数n。对UDP很有用,可以将数据发送到多个目的地。
10. s.connect((host, port))
将套接字s连接到给定host和port指定的服务器上。
TCPServer:
# _*_ coding:utf-8 _*- import socket if __name__ == "__main__": ser_soc = socket.socket(socket.AF_INET, socket.SOCK_STREAM) ser_soc.bind(('',8881)) ser_soc.listen(5) try: while True: new_soc, address = ser_soc.accept() print "Connected from", address while True: receivedData = new_soc.recv(1024) if not receivedData: break new_soc.sendall(receivedData) new_soc.close() print "Disconnected from", address finally: ser_soc.close()
TCPClient:
# _*_ coding:utf-8 _*_ import socket if __name__ == "__main__": soc = socket.socket(socket.AF_INET, socket.SOCK_STREAM) soc.connect(('localhost',8881)) print "Connected to server" data = '''Hi,Tim. I'm a programmer. Googbye.''' for line in data.splitlines(): soc.sendall(line) print 'Send:',line response = soc.recv(1024) print 'Received:',response soc.close()
UDPServer:
# _*_ coding:utf-8 _*_ import socket if __name__ == "__main__": sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) sock.bind(('',8881)) try: while True: data, address = sock.recvfrom(1024) print "Datagram from:", address sock.sendto(data,address) finally: sock.close()
UDPClient:
# _*_ coding:utf-8 _*_ import socket if __name__ == "__main__": sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) data = '''Hi,Tim. I'm a programmer. Googbye.''' for line in data.splitlines(): sock.sendto(line,('localhost',8881)) print "Send:",line response = sock.recv(1024) print "Received:",response sock.close()
发表评论
-
sqlalchemy note
2012-09-10 22:47 13201 # 父表插入记录出错,NotSupportedEr ... -
python note
2012-09-07 11:49 13311.func(**{'type':'Event'}) 等价于f ... -
note
2012-09-03 20:10 1620安装easy_install 安装pip easy_i ... -
with 和 if-else条件表达式
2012-07-22 11:09 1546对于要确保即使发生一个错误时也能运行一些清理代码而言,try. ... -
Python 线程
2012-02-21 12:01 13281.创建线程 通过继承threading模块中的Thread ... -
Python面向对象笔记
2012-02-20 17:18 13371.特殊的类属性 对任何类,都有下面特殊属性: ... -
Python datetime模块
2012-02-18 12:33 9227datetime模块的所有类的对象都是不可变的。 da ... -
Python time模块
2012-02-17 18:20 1032底层C语言库决定了time模块可以处理的日期范围。 c ... -
发送邮件
2012-01-14 19:59 11651.使用smtplib #encoding=utf-8 ... -
Python文件操作
2012-01-14 16:26 1045一.os模块常用操作函数 remove()/unlin ... -
Python单例模式
2012-01-13 22:12 3510方法一 import threading cla ... -
Python异常
2012-01-13 19:11 24371.常用异常名 AttributeError 调用不 ... -
列表和元组
2012-01-12 13:57 15201.列表常用操作 list.append(x) 追加 ... -
字符串
2012-01-12 13:19 14111.字符串常用操作: ... -
Python基础笔记
2012-01-14 16:31 11241.环境变量设置: 编辑系统变量Path,添加两 ... -
版本控制Mercurial(hg)
2011-11-12 16:07 3086简介 ... -
Python Excel Tutorial (一):xlrd的安装和读取Excel文件
2011-09-16 22:49 51908Python Excel Tutorial 指南 安装 有 ... -
Python排序
2011-09-10 13:32 161011.字符串列表排序 列表的排序是python内置功能,自身含 ... -
ChartDirector在Pythonr下的安装
2011-08-27 17:38 17341、在C:/python27/Lib/site_pack ... -
我的第一个Python Web应用
2011-07-05 16:02 3906本文实现的是通信录的Web应用,在Windows xp环 ...
相关推荐
一直以来很少看到有多少人使用php的socket模块来做一些事情,大概大家都把它定位在脚本语言的范畴内吧,但是其实php的socket模块可以做很多事情,包括做ftplist,http post提交,smtp提交,组包并进行特殊报文的交互...
c# socket模块
课程作业基于socket模块实现的一个FTP工具python源码.zip课程作业基于socket模块实现的一个FTP工具python源码.zip课程作业基于socket模块实现的一个FTP工具python源码.zip课程作业基于socket模块实现的一个FTP工具...
Python Socket模块实现服务端与客户端通信
主要介绍了Python socket模块方法实现详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
python进阶之socket模块详解.pdf
本文实例讲述了Python基于socket模块实现UDP通信功能。分享给大家供大家参考,具体如下: 一 代码 1、接收端 import socket #使用IPV4协议,使用UDP协议传输数据 s=socket.socket(socket.AF_INET, socket.SOCK_...
网络协议栈模块作为电话子系统可裁剪部件,主要分为HTTP和socket模块;
据传是盛大的Socket模块源代码
使用python3 socket模块编写TCP文件下载程序 原理其实很简单,服务器端将客户端发送的文件进行读取,然后把内容发送给客户端,客户端将收到的数据写入文件,既可以完成简单的文件下载功能。 代码如下 文件服务器代码...
利用socket模块传输图像数据,实现视频在设备间的实时传输,并且检测相应目标并显示位置。可以用于将树莓派的摄像头捕捉的图像传输给同一局域网内的上位机这一场景,也可以用于两个电脑间的视频传输。
资源介绍:。模块里有类_客户端_SSL,类_服务端_SSL,KernelFunc,类_许可区,类_网络环境_SSL。资源作者:。易语言入门教程学习。资源界面:。资源下载:。
我们平时引入Python的socket模块利用其中的方法可以轻松地写出搭建socket通信的程序,今天我们就来看一下Python的socket模块源码中的一些实现要点分析,领略Python简洁代码的一些背后功劳.
mod_event_socket以socket的形式,对外提供控制FS一种途径,缺省的IP是127.0.0.1,TCP端口是8021。可以在外部通过sokcet执行API/APP命令。配置文件是conf/autoload_configs/modules.conf.xml,连接分两种模式: ...
简化socket使用
资源介绍:。v5.4.1 更新:。> 加入线程池公共组件:。1、加入 IHPThreadPool ...1、HP-Socket v5.4.1 完全兼容 HP-Socket v5.3.2 版本,可以直接替换升级。资源作者:。@来源于互联网。资源下载:。Tags:hp-socket。
Socket模块的主要目的是帮助在网络上的两个程序之间建立信息通道。在Python中提供了两个基本的Socket模块 服务端Socket 客户端Socket。 当创建了一个服务端Socket之后,这个Socket就会在本机的一个端口上等待连接...
HP_Socket 5.71 模块+易语言源码
使用 Python 进行 socket 编程,Python 提供了两个基本的 socket 模块。第一个是 Socket,它提供了标准的 BSD Sockets API。第二个是 SocketServer,它提供了服务器中心类,可以简化网络服务器的开发。