以京东商城的商品图片为例,涉及的知识点有:
1.正则匹配获取图片地址
2.修正图片地址格式
3.用request.get(url)获取图片链接,并通过os操作保存到本地。
代码如下:
import requests
import re
url = 'https://channel.jd.com/1713-3258.html'
res = requests.get(url)
res.encoding = 'gbk'
image_pat = '<img src="" data-lazy-img="(.*?)" width="160" height="160">'
image_list = re.findall(image_pat,res.text)
#将图片保存到本地
for i in range(len(image_list)):
# 将图片地址的格式整理一下
image_list[i] = 'http:'+image_list[i]
print(i)
res = requests.get(image_list[i])
#'wb'指用二进制方式写入文件,文件地址改成你想保存的地址
with open('D:/TensorflowTest/PaChong/img/'+str(i)+'.jpg','wb') as pic_object:
#对于非文本请求,用content
pic_object.write(res.content)
运行后效果如下: