python创建简单的客户端和服务器
TCP客户端
import socket
target_host="www.baidu.com"
target_port=80
client=socket.socket(socket.AF_INET,socket.SOCK_STREAM) # 建立一个包含AF_INET,SOCK_STREAM参数的socket对象。其中AF_INET说明使用的是标准的IPv4,SOCK_STREAM(面向连接)说明这将是一个TCP客户端。
client.connect((target_host,target_port)) # 连接客户端
client.send("GET / HTTP/1.1\r\nHost: baidu.com\r\n\r\n") # 发送一些数据
response=client.recv(6049) # 接受一些数据
print response
UDP客户端
import socket
target_host="127.0.0.1"
target_port=80
client=socket.socket(socket.AF_INET,socket.SOCK_DGRAM) # 建立一个socket对象,套接字类型改为SOCK_DGRAM(非连接)
client.sendto( "AAABBBCCC",(target_host,target_port)) # 调用 sendto()(发送UDP数据)函数将数据发送到想要发送的服务器上,因为UDP是无连接状态的传输协议
TCP服务器
import socket
import threading
bind_ip="0.0.0.0"
bind_port= 9999
server=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
server.bind((bind_ip,bind_port)) # 确定服务器需要监听的IP地址和端口
server.listen(5) # 启动监听,并将最大连接数设为5
print "[*] Listening on %s:%d" % (bind_ip,bind_port)def handle_client(client_socket): # 客户处理线程request=client_socket.recv(1024) # 打印客户端发送的到的内容print "[*] Received: %s" % requestclient_socket.send("ACK!") # 返还一个数据包client_socket.close()
while True: # 让服务器进入主循环中,在这里等待连接client,addr=server.accept() # 当一个客户端成功连接时候,接收到的客户端的套接字对象并保存在变量client中,将远程连接的细节保存在addr中print "[*] Accepted connection from: %s:%d" % (addr[0],addr[1])client_handler=threading.Thread(target=handle_client,args=(client,)) # 以handle_client函数作为回调函数创建一个新的线程对象,将客户端套接字作为一个句柄传递给它。client_handler.start()
python创建简单的客户端和服务器相关推荐
- Python 实现简单的客户端认证
更多编程教程请到:菜鸟教程 https://www.piaodoo.com/ 友情链接: 高州阳光论坛https://www.hnthzk.com/ 人人影视http://www.op-kg.com/ ...
- python编程例子 输入 输出-推荐 :手把手教你用Python创建简单的神经网络(附代码)...
原标题:推荐 :手把手教你用Python创建简单的神经网络(附代码) 作者:Michael J.Garbade:翻译:陈之炎:校对:丁楠雅 本文共2000字,9分钟. 本文将为你演示如何创建一个神经网 ...
- python3socket非阻塞_利用Python中SocketServer 实现客户端与服务器间非阻塞通信
利用SocketServer模块来实现网络客户端与服务器并发连接非阻塞通信. 首先,先了解下SocketServer模块中可供使用的类: BaseServer:包含服务器的核心功能与混合(mix-in ...
- pythontcp服务器如何关闭阻塞_利用Python中SocketServer 实现客户端与服务器间非阻塞通信...
利用SocketServer模块来实现网络客户端与服务器并发连接非阻塞通信. 首先,先了解下SocketServer模块中可供使用的类: BaseServer:包含服务器的核心功能与混合(mix-in ...
- 独家 | 手把手教你用Python创建简单的神经网络(附代码)
作者:Michael J.Garbade 翻译:陈之炎 校对:丁楠雅 本文共2000字,建议阅读9分钟. 本文将为你演示如何创建一个神经网络,带你深入了解神经网络的工作方式. 了解神经网络工作方式的最 ...
- python3socket非阻塞在linux里无效_利用Python中SocketServer实现客户端与服务器间非阻塞通信方法介绍...
利用SocketServer模块来实现网络客户端与服务器并发连接非阻塞通信 首先,先了解下SocketServer模块中可供使用的类: BaseServer:包含服务器的核心功能与混合(mix-in) ...
- python简单代码-手把手教你用Python创建简单的神经网络(附代码)
了解神经网络工作方式的***途径莫过于亲自创建一个神经网络,本文将演示如何做到这一点. 神经网络(NN)又称人工神经网络(ANN),是机器学习领域中基于生物神经网络概念的学习算法的一个子集. 拥有五年 ...
- Windows网络编程入门:简单的客户端和服务器通信程序调试
昨日入手Windows网络编程经络这本书,第一章给了Echo客户端和服务器的简单通信实例程序.从小白到入门目测都是比较苦逼,居然想不到怎么来测试结果.什么同时运行啊.分别编译运行啊乱七八糟的想法就开始 ...
- Python网络编程【客户端与服务器通信】
一.将数据写在发送语句中[传统方式] server端代码: import socket #服务器端将socket套接字赋给sock套接字 sock=socket.socket(socket.AF_IN ...
最新文章
- CUDA 8混合精度编程
- python写文件读文件-Python文件读写
- ARM汇编:汇编语言跳转指令: JMP、JECXZ、JA、JB、JG、JL、JE、JZ、JS、JC、JO、JP 等
- 如果你不喜欢让大人说你祝酒祝福
- Oracle expdp 导出
- 大文件表空间+创建大文件表空间+查询数据库表空间类型信息+查询数据库表空间类型信息...
- PHP7内核基础知识之变量类型
- HDU1285 确定比赛名次【拓扑排序】
- 这个软件真好用,让 iPhone 无线投屏到 Mac 上
- 7 HandlerSet 处理程序链表类——Live555源码阅读(一)基本组件类
- 带头节点的链式存储栈基本操作(进栈、出栈、获取栈顶元素)
- ANN to SNN
- 语音对话声空计算机APP,空空语音app
- php 查看文件信息,文件信息查看
- Java求时间差(日期差)
- u-boot-2012.04.01移植到TQ2440
- 十大最佳自动化测试工具
- 电子计算机与多媒体课件背景,演示型多媒体课件应用与设计原则
- ADONIS、ANOSIM、Mangel_test、MRPP
- 四种访问修饰符---(Java版)