码迷,mamicode.com
首页 > 数据库 > 详细

Mysql0.py

时间:2016-06-09 17:11:11      阅读:271      评论:0      收藏:0      [点我收藏+]

标签:

# py1.py
# -*- coding: utf-8 -*-
import sqlalchemy
import tushare
import pandas
import socket
import struct


class Mysql0:

    def __init__(self, user0=test, password0=123456, dsn0=odbcdsn, host0=192.168.1.3, port0=12345):
        self.user0 = user0
        self.password0 = password0
        self.dsn0 = dsn0
        self.engine0 = sqlalchemy.create_engine(mysql+pyodbc://+self.user0+:+self.password0+@+self.dsn0)
        self.host0 = host0
        self.port0 = port0

    def get_url_data0(self):
        codelist0 = pandas.DataFrame((tushare.get_today_all())[code])
        codelist0 = codelist0.sort(columns=code, ascending=True)
        codelist0[index] = pandas.DataFrame([i for i in range(0, len(codelist0))], codelist0.index)
        codelist0.to_sql(codelist, self.engine0, if_exists=replace, index=True, index_label=index)
        for i in range(0, len(codelist0)):
            stockdata0 = tushare.get_h_data(codelist0[code][i])
            stockdata0[date] = pandas.Series(stockdata0.index, stockdata0.index)
            stockdata0 = stockdata0.sort_values(by=date, ascending=True)
            stockdata0[index] = pandas.DataFrame([i for i in range(0, len(stockdata0))], stockdata0.index)
            stockdata0.to_sql(codelist0[code][i], self.engine0, if_exists=replace, index=True, index_label=index)

    def get_sql_data0(self, code0=sh):
        stockdata1 = pandas.read_sql_table(code0, self.engine0)
        return code0, stockdata1

    def run_socket_server0(self):
        socket0 = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        socket0.bind((self.host0, self.port0))
        socket0.listen(5)
        code1, stockdata2 = self.get_sql_data0()
        i0 = stockdata2[index]
        o0 = stockdata2[open]
        h0 = stockdata2[high]
        l0 = stockdata2[low]
        c0 = stockdata2[close]
        v0 = stockdata2[volume]
        i = 0
        while True:
            connection0, address0 = socket0.accept()
            if connection0.recv(1024) == bconnect and i < len(i0):
                connection0.send(struct.pack(6si5f, code1.encode(utf-8), i0[i], o0[i], h0[i], l0[i], c0[i], v0[i]))
                i += 1
            else:
                connection0.close()
                socket0.close()

    def run_socket_client0(self, message0=bconnect):
        socket1 = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        socket1.connect((self.host0, self.port0))
        socket1.send(message0)
        code2, i1, i1, h1, l1, c1, v1 = struct.unpack(6si5f, socket1.recv(1024)[:32])
        socket1.close()
        return code2.decode(utf-8), i1, i1, h1, l1, c1, v1
# py2.py
import sys
sys.path.append(D:\360data\MyWorkSpace1)
import py1
Py1 = py1.Mysql0()
Py1.get_url_data0()
print(finished!)

Mysql0.py

标签:

原文地址:http://www.cnblogs.com/blog-3123958139/p/5572480.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!