聊天服务器
# -*- coding: utf-8 -*-
"""
-------------------------------------------------
File Name: 聊天服务器
Author : LPP
E-mail : l.piaopiao@qq.com
date: 2018/8/7
-------------------------------------------------
Change Activity:
2018/8/8:
-------------------------------------------------
"""
import socket
import requests
import re
if __name__ == '__main__':
server = socket.socket()
server.bind(('10.7.181.77', 2000))
server.listen(50)
while True:
cover, addr = server.accept()
while True:
message = input('我:')
cover.send(message.encode())
message_rec = cover.recv(1024).decode(encoding='utf-8')
if message_rec in '拜拜bye再见':
cover.close()
exit()
elif re.fullmatch(r'[a-zA-z]+://[^\s]*', message_rec):
print('是网址')
match = re.search(r'(\.png|\.jpg|\.gif|\.jpeg|\.ico)$',message_rec)
if match:
response = requests.request('GET', message_rec)
# 获取响应头
print(response.headers)
# 获取响应体二进制文件
content = response.content
with open('./image'+match.group(),'wb') as f:
f.write(content)
else:
response = requests.request('GET', message_rec)
text = response.text
with open('./text.txt', 'a', encoding='utf-8') as f:
f.write(text)
else:
print(message_rec)
聊天客户端
# -*- coding: utf-8 -*-
"""
-------------------------------------------------
File Name: 04-client
Author : LPP
E-mail : l.piaopiao@qq.com
date: 2018/8/7
-------------------------------------------------
Change Activity:
2018/8/7:
-------------------------------------------------
"""
import socket
if __name__ == '__main__':
client = socket.socket()
client.connect(('192.168.1.6', 2000))
while True:
data = client.recv(1024)
datas = bytes()
while data:
print(1)
datas += data
print(datas)
data = client.recv(1024)
print(2)
print(3)
print(datas)
str1 = str(data, encoding='utf-8')
if str1 in '拜拜byebye再见':
print(str1)
break
print(str1)
message = input('>>>')
client.send(message.encode(encoding='utf-8'))
网友评论