美文网首页
Day17-作业

Day17-作业

作者: 晓晓的忍儿 | 来源:发表于2018-08-07 23:11 被阅读0次

server

'''__author__==fubo'''

'''
写一个两个人的聊天系统,可以实现双向聊天功能。
# 如果发送的是普通的文字就直接打印,如果发送的文字是’拜拜’就关闭连接,
# 如果是一个网络地址就获取数据(保存到文本文件中),如果是图片地址就下载图片到本地


'''
import socket
import re
from requests import request
import json
if __name__ == '__main__':
    server=socket.socket()
    server.bind(('172.19.167.4',8089))
    server.listen(50)
    while True:
        client,addr=server.accept()
        while True:
            data=input('>>>')
            if data=='拜拜':
                client.close()
            elif re.match('^\..+\.[a-zA-Z]+',data):
                client.send('图片'.encode())
                with open(data,'rb')as f:
                    get_image=f.read()
                    client.send(get_image)
                    client.close()
                    break
            elif re.match('(https|ftp|file):.*',data):
                client.send('URL'.encode())
                client.send(data.encode())
            else:
                client.send('字符串'.encode())
                client.send(data.encode())
            str1=client.recv(1024)
            str2 = client.recv(1024)
            data1=str1.decode(encoding='utf-8')
            print(data1)
            if data1=='字符串':
                data2 = str2.decode(encoding='utf-8')
                print(data2)
            elif data1=='图片':
                data_image=bytes()
                while str2:
                    data_image+=str2
                    str2 = client.recv(1024)
                with open('./aaa.gif','wb') as f:
                    f.write(data_image)
                    # client.close()
            elif data1=='URL':
                data2 = str2.decode(encoding='utf-8')
                response=request('GET',data2)
                json1=response.json()
                with open('./url.json','w',encoding='utf-8')as f:
                    json.dump(json1,f)

client

'''__author__==fubo'''

'''


'''
import socket
import re
from requests import request
import json
if __name__ == '__main__':
    client=socket.socket()
    client.connect(('172.19.167.4',8089))
    while True:
        str1 = client.recv(1024)
        str2 = client.recv(1024)
        data1 = str1.decode(encoding='utf-8')
        print(data1)
        if data1 == '字符串':
            data2 = str2.decode(encoding='utf-8')
            print(data2)
        elif data1 == '图片':
            data_image = bytes()
            while str2:
                data_image += str2
                str2 = client.recv(1024)
            with open('./aaa.gif', 'wb') as f:
                f.write(data_image)
                # client.close()
        elif data1 == 'URL':
            data2 = str2.decode(encoding='utf-8')
            response = request('GET', data2)
            json1 = response.json()
            with open('./url.json', 'w', encoding='utf-8')as f:
                json.dump(json1, f)
        message = input('>>>')
        if message=='拜拜':
            client.close()
        elif re.match('^\..+\.[a-zA-Z]+',message):
            client.send('图片'.encode())
            with open(message,'rb')as f:
                get_image=f.read()
                client.send(get_image)
        elif re.fullmatch('(https|ftp|file):.*',message):
            client.send('URL'.encode())
            client.send(message.encode())
        else:
            client.send('字符串'.encode())
            client.send(message.encode())


server结果:

>>>asda
字符串
fsdf
>>>fs
字符串
fsf
>>>https://www.apiopen.top/satinApi?type=1&page=1
字符串
ew
>>>./1.gif

client结果:

字符串
asda
>>>fsdf
字符串
fs
>>>fsf
URL
>>>ew
图片
>>>

相关文章

  • day17-(作业)

    1,用pygame画头像

  • Day17-作业

    1.学生表(student) create table student(sno varchar(3),sname ...

  • day17-作业

    写一个两个人的聊天系统,可以实现双向聊天功能。如果发送的是普通的文字就直接打印,如果发送的文字是’拜拜’就关闭连接...

  • Day17-作业

    server client server结果: client结果:

  • day17-作业

    写一个正则表达式判断一个字符串是否是ip地址规则:一个ip地址由4个数字组成,每个数字之间用.连接。每个数字的大小...

  • day17-作业

    写一个正则表达式判断一个字符串是否是ip地址规则:一个ip地址由4个数字组成,每个数字之间用.连接。每个数字的大小...

  • day17-作业

    写一个正则表达式判断一个字符串是否是ip地址规则:一个ip地址由4个数字组成,每个数字之间用.连接。每个数字的大小...

  • day17-作业

    写一个正则表达式判断一个字符串是否是ip地址规则:一个ip地址由4个数字组成,每个数字之间用.连接。每个数字的大小...

  • Day17-作业

    1. 写一个正则表达式判断一个字符串是否是ip地址 规则:一个ip地址由4个数字组成,每个数字之间用.连接。每个数...

  • day17-作业

    写一个正则表达式判断一个字符串是否是ip地址 结果: 计算一个字符串中所有的数字的和 结果: 验证输入的内容只能是...

网友评论

      本文标题:Day17-作业

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