python socket聊天

文件目录如下

001534_4qUn_2411815.png

#coding:utf-8

from utility.sql_helper import MySqlHelper

class Chat(object):
    def __init__(self):
        self.helper = MySqlHelper()

    def insert(self,texts,times):
        sql = 'insert into chat (text,time)values(%s,%s)'
        params = (texts,times)
        return self.helper.insert(sql,params)

    def getall(self):
        sql = 'select * from chat'
        return self.helper.getall(sql)
        
------------------------------------------------------------------------------------------------
#coding:utf-8

import MySQLdb
import conf
class MySqlHelper(object):
    def __init__(self):
        self.conn_dict = conf.conn_dict

    def insert(self,sql,params):
        conn = MySQLdb.connect(**self.conn_dict)
        cursor = conn.cursor(cursorclass =  MySQLdb.cursors.DictCursor)
        cursor.execute(sql,params)
        conn.commit()

        cursor.close()
        conn.close()

    def getall(self,sql):
        conn = MySQLdb.connect(**self.conn_dict)
        cursor = conn.cursor(cursorclass=MySQLdb.cursors.DictCursor)
        cursor.execute(sql)
        res = cursor.fetchall()

        cursor.close()
        conn.close()
        return res
        
 ---------------------------------------------------------------------------------------------
 
 #coding:utf-8

import socket

client = socket.socket()
ip_port = ('127.0.0.1',9999)

client.connect(ip_port)
while True:
    data = client.recv(1024)
    print data
    inp = raw_input('client:')
    client.send(inp)
    if inp =='exit':
        break
        
        
 ------------------------------------------------------------------------------------------
 
 #coding:utf-8

conn_dict = dict(host='localhost',user='root',passwd='',db='python')
 ----------------------------------------------------------------------------------------------
 # coding:utf8
from model.chat import Chat
import SocketServer
import time


class  MyServer(SocketServer.BaseRequestHandler):

    def setup(self):
        pass

    def handle(self):
        # print self.request,self.client_address,self.server
        #self.request = socket
        #
        conn = self.request
        conn.send('hello.')
        flag = True
        while flag:
            data = conn.recv(1024)
            print data
            chat = Chat()
            timeline = str(time.time())
            chat.insert(data,timeline)
            if data =='exit':
                flag = False
            conn.send('asd')
        conn.close()

    def finish(self):
        pass


if __name__ == '__main__':
    server = SocketServer.ThreadingTCPServer(('127.0.0.1',9999),MyServer)
    server.serve_forever()
    # chat = Chat()
    # res = chat.getall()
    # print res



转载于:https://my.oschina.net/u/2411815/blog/628914

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值