python socket聊天
2016-03-03 00:00
706 查看
摘要: 刚学习socket ,写个存入数据库的聊天,很简单,未完 。。。 回话功能没添加 ,数据库插入编码有问题
文件目录如下
文件目录如下
#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 ha 7fe0 ndle(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
相关文章推荐
- Python实现修改Windows CMD命令行输出颜色(实例解析)
- Web常见编码及变换类型识别 (Python编程实现)
- python面向对象编程初学整理
- django+python+mysql学习笔记
- python模块结构和布局与__name__ 指示模块被加载问题
- [notes]Iterator-1:Sentence class Python迭代器基本概念
- python ImportError: DLL load failed: %1 不是有效的 Win32 应用程序
- 机器学习实战之kNN
- 安装第三方库出现 Python version 2.7 required, which was not found in the registry
- Python识别网站验证码
- python爬虫-采集英语翻译
- Python 第五天 装饰器
- python之函数学习
- RabbitMQ学习小结(五)—— Topics[Python]
- RabbitMQ学习小结(六)—— RPC[Python]
- RabbitMQ学习小结(四)—— Routing[Python]
- RabbitMQ学习小结(三)—— Publish Subscribe[Python]
- RabbitMQ学习小结(二)—— Work Queues[Python]
- RabbitMQ学习小结(一)—— Hello World [Python]
- python切片解析