代码贴上,做个记录

TcpClient

# -*- coding:utf-8 -*-

import socket

target_host = "127.0.0.1" #服务器端地址
target_port = 5555 #与服务器的端口号一致 while True: client = socket.socket(socket.AF_INET,socket.SOCK_STREAM) client.connect((target_host,target_port))
#data存储要发送的数据
data = raw_input("请输入要发送的数据:")
#input对于接受输入是有问题的 raw_input()把所有输入都看做字符串
if not data:
break
client.send(data) response = client.recv(1024) print(response) client.close()

TcpServer

# -*- coding:utf-8 -*-
import socket
import threading bind_ip = "0.0.0.0" #监听所有可用的接口
bind_port = 5555 #非特权端口号都可以使用 #AF_INET:使用标准的IPv4地址或主机名,SOCK_STREAM:说明这是一个TCP服务器
server = socket.socket(socket.AF_INET,socket.SOCK_STREAM) #服务器监听的ip和端口号
server.bind((bind_ip,bind_port)) print("[*] Listening on %s:%d" % (bind_ip,bind_port)) #最大连接数
server.listen(5) #客户处理线程
def handle_client(client_socket): request = client_socket.recv(1024) print("[*] Received: %s" % request)
#向客户端返回数据
client_socket.send("滴,打卡成功!") client_socket.close() while True: #等待客户连接,连接成功后,将socket对象保存到client,将细节数据等保存到addr
client,addr = server.accept() print("[*] Acception connection from %s:%d" % (addr[0],addr[1])) client_handler = threading.Thread(target=handle_client,args=(client,))
client_handler.start()

客户端发送

服务端接收数据

python写一些简单的tcp服务器和客户端的更多相关文章

  1. Mina、Netty、Twisted一起学(一):实现简单的TCP服务器

    MINA.Netty.Twisted为什么放在一起学习?首先,不妨先分别看一下它们官方网站对其的介绍: MINA: Apache MINA is a network application frame ...

  2. 用Python写一个简单的Web框架

    一.概述 二.从demo_app开始 三.WSGI中的application 四.区分URL 五.重构 1.正则匹配URL 2.DRY 3.抽象出框架 六.参考 一.概述 在Python中,WSGI( ...

  3. Python 绝技 —— TCP服务器与客户端

    i春秋作家:wasrehpic 0×00 前言 「网络」一直以来都是黑客最热衷的竞技场.数据在网络中肆意传播:主机扫描.代码注入.网络嗅探.数据篡改重放.拒绝服务攻击……黑客的功底越深厚,能做的就越多 ...

  4. python socket之tcp服务器与客户端demo

    python socket之tcp服务器与客户端demo 作者:vpoet mails:vpoet_sir@163.com server: # -*- coding: cp936 -*- ''' 建立 ...

  5. Node.js实战14:一个简单的TCP服务器。

    本文,将会展示如何用Nodejs内置的net模块开发一个TCP服务器,同时模拟一个客户端,并实现客户端和服务端交互. net模块是nodejs内置的基础网络模块,通过使用net,可以创建一个简单的tc ...

  6. 如何用PHP/MySQL为 iOS App 写一个简单的web服务器(译) PART1

    原文:http://www.raywenderlich.com/2941/how-to-write-a-simple-phpmysql-web-service-for-an-ios-app 作为一个i ...

  7. 通过python 构建一个简单的聊天服务器

    构建一个 Python 聊天服务器 一个简单的聊天服务器 现在您已经了解了 Python 中基本的网络 API:接下来可以在一个简单的应用程序中应用这些知识了.在本节中,将构建一个简单的聊天服务器.使 ...

  8. 如何写一个简单的http服务器

    最近几天用C++写了一个简单的HTTP服务器,作为学习网络编程和Linux环境编程的练手项目,这篇文章记录我在写一个HTTP服务器过程中遇到的问题和学习到的知识. 服务器的源代码放在Github. H ...

  9. 如何写一个简单的HTTP服务器(重做版)

    最近几天用C++重新写了之前的HTTP服务器,对以前的代码进行改进.新的HTTP服务器采用Reactor模式,有多个线程并且每个线程有一个EventLoop,主程序将任务分发到每个线程,其中采用的是轮 ...

随机推荐

  1. Linux终端复制粘贴后前后会多出0~和~1

    在终端中执行即可 printf "\e[?2004l" 在终端无法复制问题 set mouse=r

  2. CentOS7.5 使用 kubeadm 安装配置 Kubernetes1.12(四)

    在之前的文章,我们已经演示了yum 和二进制方式的安装方式,本文我们将用官方推荐的kubeadm来进行安装部署. kubeadm是 Kubernetes 官方提供的用于快速安装Kubernetes集群 ...

  3. AutoIt实现软件自动化安装

    AutoIt下载安装 1.下载:https://www.autoitscript.com/site/autoit/downloads/ 2.安装,一直点下一步 3.安装好可以看到开始菜单如下(需要用到 ...

  4. GitLabCICD

    CI/CD是什么 CI全名Continuous Integration,啥意思?就是我们经常听到的持续集成概念.当开发每天会提交多次代码到主干上,会做一些重复性的动作时,就可以用持续集成环境来操作.有 ...

  5. spring的exception

    Springmvc的对于异常类进行统一处理的方法 一.局部异常统一处理 当异常出现时,将抛给异常处理方法,异常处理发放接收到异常数据,进行处理,统一到异常页面 @ExceptionHandler:通过 ...

  6. Google Colab——零成本玩转深度学习

    前言 最近在学深度学习HyperLPR项目时,由于一直没有比较合适的设备训练深度学习的模型,所以在网上想找到提供模型训练,经过一段时间的搜索,最终发现了一个谷歌的产品--Google Colabora ...

  7. 【基于onenet-edp的文件传输】1、调试上报数据点和端对端透传

    onenet-edp上报数据点和端对端透传 一.前言 edp是onenet用于tcp设备定制的一套协议,能够灵活地实现数据上报和透传: 二.准备工作 1.找到edp页面 进入工作台后,找到多协议接入, ...

  8. redis源码分析(三)--rdb持久化

    Redis rdb持久化 Redis支持两种持久化方式:rdb与aof.rdb将一个节点上的内存数据序列化后存储到磁盘中,序列化的数据以尽可能节约空间的方式存储,并非完全的ascii表示.它的优点在于 ...

  9. python之Ai测试Applitools使用

    一:Appltools下载: pip install eyes-selenium==3.16.2 二:注册:Appltools账号:https://applitools.com/sign-up 三.获 ...

  10. 基于Spark2.X系列的累加器和Streaming基础

    一.累加器API 关于累加器,前面我也写了一篇博客,顺便粘贴这儿,对比学习,Spark学习之编程进阶总结(一).Spark 2.0系列引入了一个更加简单和更高性能的累加器API,如在1.X版本中可以这 ...