最近写了一个工程,用作运维的,所以研究了一下Python的TCP通讯(服务器挂一个脚本,电脑挂一个脚本,就可以通过此通讯进行编码加密后传输取回想要的内容)

服务端:
from socket import * # 创建socket
tcp_server_socket = socket(AF_INET, SOCK_STREAM) # 本地信息
address = ('127.0.0.1', 7788) # 绑定
tcp_server_socket.bind(address) # 使用socket创建的套接字默认的属性是主动的,使用listen将其变为被动的,这样就可以接收别人的链接了listen里的数字表征同一时刻能连接客户端的程度.
tcp_server_socket.listen(128) # 如果有新的客户端来链接服务器,那么就产生一个新的套接字专门为这个客户端服务
# client_socket用来为这个客户端服务
# tcp_server_socket就可以省下来专门等待其他新客户端的链接
# clientAddr 是元组(ip,端口)
client_socket, clientAddr = tcp_server_socket.accept() # 接收对方发送过来的数据,和udp不同返回的只有数据
recv_data = client_socket.recv(1024) # 接收1024个字节
print('接收到的数据为:', recv_data.decode('gbk')) # 发送一些数据到客户端
client_socket.send("thank you !".encode('gbk')) # # 关闭为这个客户端服务的套接字,只要关闭了,就意味着为不能再为这个客户端服务了,如果还需要服务,只能再次重新连接
client_socket.close()

客户端:

from socket import *

# 创建socket
tcp_client_socket = socket(AF_INET, SOCK_STREAM) # 目的信息
server_ip = input("请输入服务器ip:")
server_port = int(input("请输入服务器port:")) # 链接服务器
tcp_client_socket.connect((server_ip, server_port)) # 提示用户输入数据
send_data = input("请输入要发送的数据:") tcp_client_socket.send(send_data.encode("gbk")) # 接收对方发送过来的数据,最大接收1024个字节
recvData = tcp_client_socket.recv(1024)
print('接收到的数据为:', recvData.decode('gbk')) # 关闭套接字
tcp_client_socket.close()

最新文章

  1. vue.js 1中父组件跳到子组件中并传参让子组件显示不同的内容
  2. Html登录表单阻止自动填充
  3. 最短路算法 (bellman-Ford算法)
  4. VirtualBox: Effective UID is not root (euid=1000 egid=100 uid=1000 gid=100)
  5. WGZX:javaScript 学习心得--1
  6. JSON.stringify 语法实例讲解
  7. Classic Source Code Collected
  8. 如何在GeoServer上发布一张地图
  9. u盘的超级用法
  10. #添加屏蔽IP LINUX
  11. mysql 添加登录用户
  12. orcale设置自增列
  13. git 分支改名
  14. 【算法】LeetCode算法题-Remove Element
  15. IDEA和WebStorm破解教程--激活n年(随时更新)
  16. iOS开发 -------- AFNetworking使用中遇到的小问题
  17. lintcode 单词接龙II
  18. Python 爬虫入门3种方法
  19. Dictionary转为Model实例
  20. AngularJS orderBy 使用要点

热门文章

  1. 如何用AR Engine环境Mesh能力实现虚实遮挡
  2. vue2使用组件进行父子互相传值的sync语法糖方法和原生方法
  3. Spring MVC(配置、入门)
  4. nginx启停shell脚本
  5. 聊一聊被 .NET程序员 遗忘的 COM 组件
  6. Linux基础_5_文件管理
  7. 1NF | 2NF | 3NF的区分以及什么是函数依赖、部分函数依赖、值传递依赖(最详细的讲解1NF、2NF、3NF的关系)
  8. 编译安装PHP7.4
  9. 京东云开发者|软件架构可视化及C4模型:架构设计不仅仅是UML
  10. mysql网上知识