【python socket 完成简单的通信】教程文章相关的互联网学习教程文章

python网络编程学习笔记(二):socket建立网络客户端

1、建立socket 建立socket对象需要搞清通信类型和协议家族。通信类型指明了用什么协议来传输数据。协议的例子包括IPv4、IPv6、IPX\SPX、AFP。对于internet通信,通信类型基本上都是AF_INET(和IPv4对应)。协议家族一般表示TCP通信的SOCK_STREAM或者表示UDP通信的SOCK_DGRAM。因此对于TCP通信,建立一个socket连接的语句为:s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)对于UDP通信,建立一个socket连接的语句为:s=socket...

在Python中使用异步Socket编程性能测试

OK,首先写一个python socket的server段,对开放三个端口:10000,10001,10002.krondo的例子中是每个server绑定一个端口,测试的时候需要分别开3个shell,分别运行.这太麻烦了,就分别用三个Thread来运行这些services.import optparse import os import socket import time from threading import Thread import StringIO txt = 1111 2222 3333 4444 def server(listen_socket): while True: buf = StringIO.StringIO(txt) sock...

Python中使用socket发送HTTP请求数据接收不完整问题解决方法

由于工作的需求,需要用python做一个类似网络爬虫的采集器。虽然Python的urllib模块提供更加方便简洁操作,但是涉及到一些底层的需求,如手动设定User-Agent,Referer等,所以选择了直接用socket进行设计。当然,这样的话,需要对HTTP协议比较熟悉,HTTP协议这里就不做讲解了。整个python的代码如下:#!/usr/bin env python import socket host="www.baidu.com" se=socket.socket(socket.AF_INET,socket.SOCK_STREAM) se.connect((ho...

python实现简单socket程序在两台电脑之间传输消息的方法

本文实例讲述了python实现简单socket程序在两台电脑之间传输消息的方法。分享给大家供大家参考。具体分析如下: python开发简单socket程序在两台电脑之间传输消息,分为客户端和服务端,分别在两台电脑上运行后即可进行简单的消息传输,也可以在一台电脑上测试,设置两个不同的端口即可。# Save as server.py 服务端代码 # Message Receiver import os from socket import * host = "" port = 13000 buf = 1024 addr = (host, port...

Python的Socket编程

Socket是网络应用的基础。而Python使得网络socket编程入门变得超级简单。在这篇简介里面我们将创建一个简单服务器,用于接受和相应客户端程序的请求。 由于本人最近对 Linux Containers 有点痴迷,因此我们也将在服务器中实现2个容器。同时在容器中我们在几秒钟内就能创建其他一些主机,这就能非常简单的模拟出一个网络。 创建容器 我使用的是Ubuntu14.04. 然后用root用户运行下面的命令就可以创建好2个容器了。代码如下: lxc-crea...

最基础的Python的socket编程入门教程

本文介绍使用Python进行Socket网络编程,假设读者已经具备了基本的网络编程知识和Python的基本语法知识,本文中的代码如果没有说明则都是运行在Python 3.4下。 Python的socket功能封装在socket库中,要使用socket,记得先import socket,socket库的详细介绍参见官方文档。 创建Socket 首先创建一个socket,使用socket库中得socket函数创建。import socket# create an INET, STREAM socket s = socket.socket(socket.AF_INET, socke...

python使用socket远程连接错误处理方法

本文实例讲述了python使用socket远程连接错误处理方法。分享给大家供大家参考。具体如下:import socket, sys host = sys.argv[1] textport = sys.argv[2] filename = sys.argv[3] try:s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) except socket.error, e:print "Strange error creating socket: %s" % esys.exit(1) try:port = int(textport) except ValueError:print "Couldnt find your port: %s" % esys.exit(1) t...

python基于socket实现网络广播的方法

本文实例讲述了python基于socket实现网络广播的方法。分享给大家供大家参考。具体实现方法如下:import socket, sys dest = (, 51423) s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST,1) s.sendto("Hi", dest) print "Looking for replies; press Ctrl-C to stop." while 1:(buf, address) = s.recvfrom(2048)if not len(buf):breakprint "Received from %s: %s" % (...

python使用socket向客户端发送数据的方法

本文实例讲述了python使用socket向客户端发送数据的方法。分享给大家供大家参考。具体如下:import socket, sys port = 55555 host = localhost data = "test" * 10485760 # 40MB of data s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.connect((host, port)) byteswritten = 0 while byteswritten < len(data):startpos = byteswrittenendpos = min(byteswritten + 1024, len(data))byteswritten += s.send(data[star...

python通过socket查询whois的方法

本文实例讲述了python通过socket查询whois的方法。分享给大家供大家参考。具体实现方法如下:import socket s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.connect((whois.networksolutions.com, 43)) s.send(sina.com.cn \r\n) while 1: v = s.recv(1024) if v == or v == None: break print v s.close()希望本文所述对大家的Python程序设计有所帮助。

Python设置Socket代理及实现远程摄像头控制的例子

为python设置socket代理 首先,你得下载SocksiPy这个.解压出来之后里面会有一个socks.py文件.然后你可以把这个文件复制到python安装目录里面的Lib\site-packages中.或者把这个文件复制到程序所在的目录中. 然后就可以再程序中使用socket代理来编写程序了. 下面是示例代码import socks import socket socks.setdefaultproxy(socks.PROXY_TYPE_SOCKS5,"127.0.0.1",8088) socket.socket =socks.socksocket import urllib2 urllib2.urlo...

Go语言基于Socket编写服务器端与客户端通信的实例【图】

在golang中,网络协议已经被封装的非常完好了,想要写一个Socket的Server,我们并不用像其他语言那样需要为socket、bind、listen、receive等一系列操作头疼,只要使用Golang中自带的net包即可很方便的完成连接等操作~ 在这里,给出一个最最基础的基于Socket的Server的写法:代码如下: package main import ( "fmt" "net" "log" "os" ) func main() { //建立socket,监听端口 netListen, err := net.Listen("tcp", "lo...

Python的Socket编程过程中实现UDP端口复用的实例分享

关于端口复用 一个套接字不能同时绑定多个端口,如果客户端想绑定端口号,一定要调用发送信息函数之前绑定( bind )端口,因为在发送信息函数( sendto, 或 write ),系统会自动给当前网络程序分配一个随机端口号,这相当于随机绑定了一个端口号,这里只会分配一次,以后通信就以这个随机端口通信,我们再绑定端口号的话,就会绑定失败。如果我们放在发送信息函数( sendto, 或 write )之前绑定,那样程序将以我们绑定的端口号发送信息...

Python基于select实现的socket服务器

本文实例讲述了Python基于select实现的socket服务器。分享给大家供大家参考,具体如下: 借鉴了asyncore模块中select.select的使用方法import socket import traceback import select EOL1 = b\n\n EOL2 = b\n\r\n socketmap = {} r,w,e = [],[],[] response = bHTTP/1.0 200 OK\r\nDate: Mon, 1 Jan 1996 01:01:01 GMT\r\n response += bContent-Type: text/plain\r\nContent-Length: 13\r\n\r\n response += bHello, world! serv...

python网络编程学习笔记(五):socket的一些补充

1、半开放socket 利用shutdown()函数使socket双向数据传输变为单向数据传输。shutdown()需要一个单独的参数,该参数表示了如何关闭socket。具体为:0表示禁止将来读;1 表示禁止将来写;2表示禁止将来读和写。 2、timeouts控制超时 调用socket的settimeout()函数,向其传递参数,表明超时时间设置。当访问一个socket,如果经过了参数设定的时间后,什么都没有发生,则会产生一个socket.timeout异常。例如:当程序运行后,会等待数据...