作业:
第一题:
写一个客户端和服务器的套接字:
客户端连接服务器后展示界面:
===========================
- 需要图片
- 需要文字
- 通知结束
==========================
请选择:
如果客户端选1,服务器给客户端发送一张图片,客户端保存图片到本地
如果客户端选2, 服务器输入一段文字发送给客户端, 客户端将文字保存在一个message.txt文件中
如果客户端选3,通知服务器关闭连接,并且客户端结束
客户端
import socket
client = socket.socket()
client.connect(("10.7.156.112",1000))
while 1:
re_data = client.recv(1024).decode("utf-8")
print(re_data)
send_data = input()
client.send(send_data.encode("utf-8"))
if send_data == "3":
break
re_data = client.recv(1024)
b = bytes()
while re_data:
b+=re_data
re_data = client.recv(1024)
if send_data == "1":
with open("./new_picure.jpg","wb")as f:
f.write(b)
print("成功")
if send_data == "2":
with open("./new_word.txt","w",encoding = 'utf-8')as f:
f.write(b.decode("utf-8"))
print("成功")
服务器
import socket
server = socket.socket()
server.bind(("10.7.156.112", 1000))
server.listen(100)
def file(file_name):
with open(file_name,"r",encoding = "utf-8")as f:
return f.read().encode(encoding = "utf-8")
with open("./路飞.jpg","rb")as f:
picture =f.read()
demand =file("./demand.txt")
word =file("./word.txt")
while 1:
conversation, addr = server.accept()
conversation.send(demand)
re_data = conversation.recv(1024).decode("utf-8")
if re_data == "1":
conversation.send(picture)
print("发送成功")
conversation.close()
if re_data == "2":
conversation.send(word)
print("发送成功")
conversation.close()
if re_data == "3":
break
第二题:
请求接口:
https://www.apiopen.top/satinApi?type=1&page=1 获取网络数据。
将内容中所有的name和text对应的值取出,并且保存到一个json文件中,保存的格式:
[{“name”:”张三”, “text”:”哈哈,让我们一起自由的飞翔”}, {“name”:”喒你家玻璃”, “text”:”截图暂停,截到的将会是对你爱情的预言三词!”}]
import requests
import re
import json
response = requests.get("https://www.apiopen.top/satinApi",{"type":1,"page":1} )
str1 = response.text
re_str = r'("text":".+?").+?("name":".+?")'
result = re.findall(re_str,str1)
result1 = []
for r in result:
result1.append((r[::-1]))
print(r[::-1])
E:\python\requests\venv\Scripts\python.exe E:/python/requests/网络请求.py
('"name":"办公室小野"', '"text":"办公室小野自制口味小龙虾,炎炎夏季造福同事!"')
('"name":"牛人集中营"', '"text":"在野外徒手建造私人游泳池.....\xa0\xa0这也太夸张了吧! "')
('"name":"胡涂涂图图"', '"text":"苍老师的朋友,你们认识几个?"')
('"name":"爱情保卫战"', '"text":"【爱情保卫战】女孩被涂磊大骂,去换个像样的形象再来继续节目"')
('"name":"叫我喜子"', '"text":"有人要玩我三天,然后送我iphone X,你会让我去吗?"')
('"name":"敏智的选择"', '"text":"世界杯暴躁老哥合集----这球让多少男人疯狂"')
('"name":"一风之音"', '"text":"唐僧白娘子大学毕业找不到工作,佛祖这番话点醒了多少人!"')
('"name":"情感解说家"', '"text":"我以为只要我逗你笑,你就会喜欢我。可我万万没想到,我输给了那个让你哭的人"')
('"name":"飞翔Dcf"', '"text":"你搁哪跟我扯什么犊子!"')
('"name":"肥大猫"', '"text":"第二次被这样,生活在这所城市太不容易了抱抱自己,想哭"')
('"name":"少年不知苦滋味"', '"text":"可以给我点小鱼干吗?"')
('"name":"新闻实时"', '"text":"女子搭网约车脱鞋翘脚 司机上传视频被滴滴封禁"')
('"name":"生命时报"', '"text":"寄生虫爆发!美国因麦当劳沙拉感染人数超500,如何预防?."')
('"name":"海娃的小老婆"', '"text":"让老公给我买瓶沐浴露,这个二货给我买瓶洗发水回来,看到我生气的样子,他居然说:反正你毛多,用洗发水更适合!擦~"')
('"name":"车神大咖"', '"text":"大哥被查酒驾笑个不停,心态真好"')
('"name":"摸咪校尉"', '"text":"母亲节,晒一晒你老妈年轻的照片,这也太美了吧啊啊啊!"')
('"name":"夜雨小楼听风"', '"text":"作死的速度"')
('"name":"黄山小妖"', '"text":"第一次去男朋友家,他妈嫌弃我胖,一直冷言冷语,不太愿意我和她儿子在一起...吃饭的时候我开玩笑的说道:“前几天我被一个好大的马蜂咬了一口,肚子一下就胀了起来...”男朋友轻轻怼了我一下...我看了他妈我一眼,然后又笑着说道:“其实我这个人比较爱喝酒,所以就有了啤酒肚...”男朋友又怼了我一下!我淡定的说道:“阿姨,我怀孕了,四个月了...”"')
('"name":"每日生活小技巧"', '"text":"一个视频让你了解车辆事故责任判定,涨姿势了!"')
('"name":"没有心跳N互动区版主"', '"text":"【今日话题】想想初入社会的你,和现在最大的改变是什么?"')
Process finished with exit code 0