美文网首页
day17 作业 2018-08-07

day17 作业 2018-08-07

作者: LPP27149 | 来源:发表于2018-08-07 22:26 被阅读0次

聊天服务器

# -*- 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'))

相关文章

网友评论

      本文标题:day17 作业 2018-08-07

      本文链接:https://www.haomeiwen.com/subject/jmezvftx.html