Python socket编程之四:模拟分时图
建立 socket,先运行服务器,再运行客户端,建立连接后服务器从本地数据库调数据一截一截地发送给客户端,客户端接受数据绘图模拟分时图
- 1.socket
# -*- coding: utf-8 -*-
"""socket 模块"""
import socket
import struct
import sqlalchemy
import pandas
########################################################################
class sckt:
#----------------------------------------------------------------------
def __init__(self, host = '192.168.1.3', port = 12345):
self.host = host
self.port = port
#----------------------------------------------------------------------
def run_server(self):
sckt = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sckt.bind((self.host, self.port))
sckt.listen(5)
"""连接库"""
engine = sqlalchemy.create_engine('mssql+pyodbc://sa:123456@XiTongDSN')
"""取开盘价"""
Open = (pandas.read_sql('sh', engine))['open']
i = 0
while True:
connection, address = sckt.accept()
if connection.recv(1024) == b'Link' and i < (len(Open) - 1):
"""数据打包"""
connection.send(struct.pack('f', Open[i]))
i += 1
else:
connection.send(b'Cut off the connection!')
connection.close()
#----------------------------------------------------------------------
def run_client(self, message = b'Link'):
sckt = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sckt.connect((self.host, self.port))
sckt.send(message)
"""数据解包,注意 unpack 要求四字节,其用法为后接 [:4]"""
Open = struct.unpack('f', sckt.recv(1024)[:4])
sckt.close()
"""返回开盘价,去格式的用法后接 [0]"""
return Open[0]
- 2.server
# -*- coding: utf-8 -*-
"""服务器端单独一个文件"""
import sys
sys.path.append('C:\WinPython-32bit-3.5.1.3\myWorkSpace1')
import f1
F1 = f1.sckt()
F1.run_server()
- 3.client
# -*- coding: utf-8 -*-
"""客户端单独一个文件"""
import f1
F1 = f1.sckt()
import matplotlib.pylab as plt
opn = []
for i in range(0, 1000):
opn.append(F1.run_client())
plt.plot(opn)
plt.grid(True, axis = 'both')
"""必须有 pause,不然会卡住"""
plt.pause(0.1) """先运行服务器,在运行客户端"""
- 4.runtimeplot

Python socket编程之四:模拟分时图的更多相关文章
- Python Socket 编程——聊天室示例程序
上一篇 我们学习了简单的 Python TCP Socket 编程,通过分别写服务端和客户端的代码了解基本的 Python Socket 编程模型.本文再通过一个例子来加强一下对 Socket 编程的 ...
- Python Socket 编程——聊天室演示样例程序
上一篇 我们学习了简单的 Python TCP Socket 编程,通过分别写服务端和client的代码了解主要的 Python Socket 编程模型.本文再通过一个样例来加强一下对 Socket ...
- 第九章:Python高级编程-Python socket编程
第九章:Python高级编程-Python socket编程 Python3高级核心技术97讲 笔记 9.1 弄懂HTTP.Socket.TCP这几个概念 Socket为我们封装好了协议 9.2 cl ...
- python/socket编程之粘包
python/socket编程之粘包 粘包 只有TCP有粘包现象,UDP永远不会粘包. 首先需要掌握一个socket收发消息的原理 发送端可以是1k,1k的发送数据而接受端的应用程序可以2k,2k的提 ...
- PYTHON SOCKET编程简介
原文地址: PYTHON SOCKET编程详细介绍 Python 提供了两个基本的 socket 模块. 第一个是 Socket,它提供了标准的 BSD Sockets API. 第二个是 Soc ...
- python socket编程笔记
用python实现一个简单的socket网络聊天通讯 (Linux --py2.7平台与windows--py3.6平台) 人生苦短之我用Python篇(socket编程) python之路 sock ...
- [Python_7] Python Socket 编程
0. 说明 Python Socket 编程 1. TCP 协议 [TCP Server] 通过 netstat -ano 查看端口是否开启 # -*-coding:utf-8-*- "&q ...
- Python Socket 编程示例 Echo Server
简评:我们已经从「Python Socket 编程概览」了解了 socket API 的概述以及客户端和服务器的通信方式,接下来让我们创建第一个客户端和服务器,我们将从一个简单的实现开始,服务器将简单 ...
- python socket编程入门(编写server实例)+send 与sendall的区别与使用方法
python 编写server的步骤: 1. 第一步是创建socket对象.调用socket构造函数.如: socket = socket.socket( family, type ) family参 ...
随机推荐
- 爱奇艺招聘uwp开发
招聘链接:https://job.cnblogs.com/offer/53380/ 工作地点:北京-海淀 工作年限:1年 学历要求:本科 招聘分类:移动开发工程师 工资范围:面议 职位要求 1.扎实的 ...
- 抓包排错-tcp.flags.reset
一 排查思路: 1,了解协议运作过程 2,抓包 最小化原则 对比法 二 案例 微信连wifi问题: 不同地区的微信服务器的地址可能不同. 当出现认证问题: 1,不能跳转,点了按钮没反应 2,打开后 ...
- python学习三
输入与输出 print()在括号中加上字符串,就可以向屏幕上输出指定的文字. >>>print('hello world')hello world print()函数也可以接受多个字 ...
- WebGIS空间数据请求访问机制
通用的WebGIS空间数据请求访问机制如下图所示: 图1 WebGIS空间数据请求访问机制
- Oracle数据库,数字强制显示2位小数(转)
Oracle数据库,数字强制显示2位小数 在银行.财务等对数字要求敏感的系统中,数字的显示一般有着严格的要求.今遇到一个需求,如题,要求将数字以两位小数的格式显示,如果没有小数,则强制显示为0.例如: ...
- 移动统计工具Flurry
网址:http://www.flurry.com/ 1注册和下载对应SDK 2集成SDK 3自定义统计项 至于怎么使用,后期会更新
- valueOf和toString
有一道经典的题目: var add = function() {___}; console.log(add(3)(4)(5)); // 输出60 题目要求能无限相乘,请补充add函数. 首先很显然,a ...
- mysql查询所有表行数
SELECT table_name, table_rows FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'DATABASE_NAME' ;
- Orchard使用Tags(标签)组织文本
本文链接:http://www.cnblogs.com/souther/p/4517476.html 主目录 原文链接:http://docs.orchardproject.net/Documenta ...
- Android实现两个ScrollView互相联动,同步滚动的效果
公众号:smart_android 作者:loonggg 点击"阅读原文",可查看更多内容和干货 最近在做一个项目,用到了两个ScrollView互相联动的效果,简单来说联动效果意 ...