码迷,mamicode.com
首页 > 其他好文 > 详细

爬虫1 socket方式下载一张图片

时间:2019-01-08 21:21:09      阅读:170      评论:0      收藏:0      [点我收藏+]

标签:次数   else   with   pre   host   color   data   soc   content   

import socket
import re

client = socket.socket()
# 图片url
img_url = https://img03.sogoucdn.com/app/a/100520093/10e8b9550acde0b8-459f14f6a089053d-e879bbcb128a7b240716f9531571fc2c.jpg
# 构造报文
data = GET /app/a/100520093/10e8b9550acde0b8-459f14f6a089053d-e879bbcb128a7b240716f9531571fc2c.jpg HTTP/1.1\r\nHost: img03.sogoucdn.com\r\n\r\n
# 连接服务端
client.connect((img03.sogoucdn.com,80))
# 发送请求
client.send(data.encode())
# 接收响应
# 接收第一次数据
first_data = client.recv(1024)
# 获取响应数据的长度
# print(first_data)
length = int(re.findall(bContent-Length: (.*?)\r\n,first_data)[0])
# print(length)
# 获取图片数据
img_data = b‘‘
# 获取第一次数据的图片信息
img_data += re.findall(b\r\n\r\n(.*?),first_data,re.S)[0]
# print(img_data)
while True:
   data = client.recv(1024)
   if data:
       img_data += data
       if(len(img_data) >= length):
           break
   # else:
   #     break
# print(‘哈哈‘,len(img_data),length)
print(img_data)
with open(myimg1.jpg,wb) as f:
    f.write(img_data)

 

爬虫1 socket方式下载一张图片

标签:次数   else   with   pre   host   color   data   soc   content   

原文地址:https://www.cnblogs.com/cxhzy/p/10240903.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!