使用python下载图片(福利)

 刚学python 没多久, 代码处处是漏洞,也希望各位大佬理解一下

 

爬出来的图片...

使用的 是 https://www.tianapi.com/  接口下的 美女图片...

(需要自己注册一个账号, 得到key 这样才能调用 这个接口)

但是今天看天行 好像炸了

下面开始 撸代码l

爬图片的思路

第一  获取url

第二 分析数据信息,得到有用数据

第三 请求每次 得到的信息

第三 撸 下来

(大致就是这么几块)

下面开始 写代码,,,  假如没安装的 python 环境和编辑器的话,自己百度哦(当初弄这个的时候没想到写博客,如果不会,也可以叫我帮忙)

本次需要用到两个库文件

import   requests
import json


运行 输入 pip install requests

 就ok了

1 url="http://api.tianapi.com/meinv/?key=你的key&num=50"
2     req=requests.get(url)
3     print(req)  #查看状态 
4#num =50 (每次最多50条信息 否则的话 就只会显示10条信息 ,不要弄错了)

5

将会得到 这个  如果出现这个  表示  连接成功

6 html=req.text

7 print(“=====”+html)

打印出来下面的数据

很明显

他是一个字典类型然后里面又有列表,列表里面又包含字典

E:pythonpython.exe E:/download/day1/homework5.py
<Response [200]>
正在下载中...
==========={"code":200,"msg":"success","newslist":[{"ctime":"2018-04-16 10:00","title":"◎秀展女模……[似曾相识 谢立琪等 355p]……第65辑","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/15/20/201804152010064641-1559530.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8319472-0-1.html"},{"ctime":"2018-04-16 13:00","title":"流浪的风","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/16/12/20180416124745291-239867.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8320452-0-1.html"},{"ctime":"2018-04-16 13:00","title":"青春年华-180","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/16/12/201804161243225981-239867.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8320450-0-1.html"},{"ctime":"2018-04-16 20:00","title":"I邻家女孩……[水暧山温 林温蒂 340p]……第1106辑","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/16/19/20180416195051451-1559530.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8321265-0-1.html"},{"ctime":"2018-04-16 22:00","title":"素敏--清爽自然","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/16/21/201804162101097271-5058976.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8321389-0-1.html"},{"ctime":"2018-04-17 12:00","title":"国内顶级丝袜模特系列1","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/16/20/201804162044176741-5058976.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8321357-0-1.html"},{"ctime":"2018-04-17 12:00","title":"青春年华-181","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/17/08/20180417082451741-239867.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8321924-0-1.html"},{"ctime":"2018-04-17 16:00","title":"秋的记忆","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/17/08/20180417082809761-239867.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8321927-0-1.html"},{"ctime":"2018-04-18 00:00","title":"I邻家女孩……[花朝月夕 花倾 73p]……第1107辑","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/17/23/20180417231039861-1559530.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8323786-0-1.html"},{"ctime":"2018-04-18 21:00","title":"☆成熟女人……[无欲则刚 郑倪蓉 50p]……第984辑","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/18/20/201804182032396691-1559530.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8325584-0-1.html"},{"ctime":"2018-04-18 22:00","title":"I邻家女孩……[拟于岱伦 李岱伦 152p]……第1108辑","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/18/21/20180418213612321-1559530.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8325672-0-1.html"},{"ctime":"2018-04-18 22:00","title":"☆成熟女人……[玉洁松贞 陈燕贞 218p]……第985辑","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/18/20/201804182043572831-1559530.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8325610-0-1.html"},{"ctime":"2018-04-18 23:00","title":"I邻家女孩……[月章星句  鲂怯 155p]……第1109辑","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/18/22/201804182236563791-1559530.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8325753-0-1.html"},{"ctime":"2018-04-20 00:00","title":"当鲜花灿烂时","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/18/08/201804180844296291-239867.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8324129-0-1.html"},{"ctime":"2018-04-20 00:00","title":"美女66","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/19/10/20180419102531581-3030167.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8326403-0-1.html"},{"ctime":"2018-04-20 02:00","title":"清纯少女[原创]","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/20/00/201804200057463921-4657629.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8327834-0-1.html"},{"ctime":"2018-04-20 09:00","title":"蔷薇少女","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/20/08/20180420084025741-239867.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8328121-0-1.html"},{"ctime":"2018-04-20 09:00","title":"青春年华-183","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/20/08/201804200835499611-239867.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8328112-0-1.html"},{"ctime":"2018-04-21 00:00","title":"日本最可爱夜场DJ Mel 深夜福利系列私房照","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/20/15/20180420152931381-2053485.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8329154-0-1.html"},{"ctime":"2018-04-21 21:00","title":"I邻家女孩……[无序排列 罗佩恩 102p]……第1110辑","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/21/20/201804212035208281-1559530.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8330834-0-1.html"},{"ctime":"2018-04-21 21:00","title":"★制服女生……[顺序乱了 林艾欣 131p]……第225辑","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/21/19/201804211957264591-1559530.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8330807-0-1.html"},{"ctime":"2018-04-21 22:00","title":"I邻家女孩……[漂亮媳妇 庄g榕 175p]……第1111辑","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/21/21/201804212105392921-1559530.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8330847-0-1.html"},{"ctime":"2018-04-22 09:00","title":"银杏黄了","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/21/15/201804211511057621-239867.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8330537-0-1.html"},{"ctime":"2018-04-22 09:00","title":"簇拥","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/21/15/201804211509295771-239867.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8330535-0-1.html"},{"ctime":"2018-04-22 15:00","title":"I邻家女孩……[相思成灾 忆忆 175p]……第1112辑","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/22/14/201804221432413751-1559530.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8331393-0-1.html"},{"ctime":"2018-04-22 15:00","title":"午後光","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/22/14/201804221430183511-239867.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8331390-0-1.html"},{"ctime":"2018-04-22 15:00","title":"慧心","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/22/14/201804221428205141-239867.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8331389-0-1.html"},{"ctime":"2018-04-22 15:00","title":"古装魅力","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/22/14/201804221407161841-239867.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8331372-0-1.html"},{"ctime":"2018-04-22 16:00","title":"☆成熟女人……[挺挺欲立 苏小立 144p]……第986辑","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/22/15/201804221521313471-1559530.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8331440-0-1.html"},{"ctime":"2018-04-22 16:00","title":"日本美女池田七帆学生制服写真","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/22/15/201804221535331971-2053485.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8331457-0-1.html"},{"ctime":"2018-04-22 16:00","title":"I邻家女孩……[相思成灾 忆忆 180p]……第1112辑","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/22/14/201804221432413751-1559530.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8331393-0-1.html"},{"ctime":"2018-04-22 17:00","title":"☆成熟女人……[橘子熟了 翁 153p]……第987辑","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/22/15/201804221559212591-1559530.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8331489-0-1.html"},{"ctime":"2018-04-22 19:00","title":"乐基儿近照身材壮硕肉感足[贴图]","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/22/17/20180422175812791-3194050.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8331608-0-1.html"},{"ctime":"2018-04-23 11:00","title":"老上海风情","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/23/07/20180423075206181-239867.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8332060-0-1.html"},{"ctime":"2018-04-23 16:00","title":"I邻家女孩……[无序排列 罗佩恩 114p]……第1110辑","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/21/20/201804212035208281-1559530.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8330834-0-1.html"},{"ctime":"2018-04-24 10:00","title":"衣模","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/24/09/201804240919072211-3030167.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8334463-0-1.html"},{"ctime":"2018-04-24 12:00","title":"清新甜美氧气美女肌肤白嫩酥胸美腿私房写真","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/23/18/201804231827029341-2053485.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8333580-0-1.html"},{"ctime":"2018-04-24 12:00","title":"葵林倩影","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/24/06/201804240629131861-239867.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8334223-0-1.html"},{"ctime":"2018-04-25 00:00","title":"人面桃花相映红","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/24/06/20180424063202231-239867.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8334227-0-1.html"},{"ctime":"2018-04-25 10:00","title":"紫春","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/25/09/20180425091032981-239867.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8336584-0-1.html"},{"ctime":"2018-04-25 10:00","title":"雾熙","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/25/09/20180425090828261-239867.gif","url":"http://bbs.voc.com.cn/mm/meinv-8336578-0-1.html"},{"ctime":"2018-04-26 20:00","title":"上国料萌衣~容貌和歌声格外醒目的美少女","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/26/18/2018042618574951-2053485.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8339976-0-1.html"},{"ctime":"2018-04-26 21:00","title":"☆成熟女人……[妍希 151p]……第988辑","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/26/20/201804262026445371-1559530.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8340081-0-1.html"},{"ctime":"2018-04-26 22:00","title":"I邻家女孩……[百卉千葩 潘雅卉 144p]……第1113辑","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/26/21/20180426210649511-1559530.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8340141-0-1.html"},{"ctime":"2018-04-26 22:00","title":"☆成熟女人……[妍姿艳质  妍希 151p]……第988辑","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/26/20/201804262026445371-1559530.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8340081-0-1.html"},{"ctime":"2018-04-27 11:00","title":"孤芳自赏","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/26/21/201804262149345441-619336.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8340219-0-1.html"},{"ctime":"2018-04-27 12:00","title":"宁静的女孩","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/26/22/201804262212048191-619336.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8340243-0-1.html"},{"ctime":"2018-04-28 10:00","title":"人生若只如初见","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/28/09/201804280919423791-239867.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8342677-0-1.html"},{"ctime":"2018-04-28 10:00","title":"醉春","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/28/09/201804280917461191-239867.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8342672-0-1.html"},{"ctime":"2018-04-28 10:00","title":"名模风采","description":"华声美女","picUrl":"http://image.hnol.net/c/2018-04/28/09/20180428091324361-239867.jpg","url":"http://bbs.voc.com.cn/mm/meinv-8342667-0-1.html"}]}
图片已经下载完了哦!!!

Process finished with exit code 0
print(html)

但是 它的类型现在目前是str (C#叫做string)  我们必须要转换一下

dict1=json.loads(html)  # 格式化4    调用json 的模块 然后 调用 loads (这里不使用load)打印一下类型 发现已经变成字典类型了
接下来 我们研究一下 刚刚打印出来的数据
发现了 newlist:[{XXXXXX}]
我们一层一层解析出来
dict1_data=dict1["newslist"]
print(dict1_data)


[{'ctime': '2017-01-24 16:00', 'title': '花花', 'description': '华声美女', 'picUrl': 'http://image.hnol.net/c/2017-01/23/15/20170123152957561-1876615.jpg'。。。。。。'url': 'http://bbs.voc.com.cn/mm/meinv-7641359-0-1.html'}]

变成这样就好办了

我们自己 请求图片地址,然后每次请求都把图片写下来

但是大家注意到了没有, 解析出来的 东西 并不是仅仅是图片, 而且还有文字

{'ctime': '2017-01-24 16:00', 'title': '花花', 'description': '华声美女', 'picUrl': 'http://image.hnol.net/c/2017-01/23/15/20170123152957561-1876615.jpg'

但是我们要的只要图片 不要其他的

这里,我们又要再一次解析...

但是 你看见了  我们的图片连接 有很多啊

那我岂不是要请求很多次

这个时候 我们使用 for循环 来请求

然后下载保存

  for list_data in dict1_data:

  #print(list_data["picUrl"]) 图片 仅仅是 要图片地址,不要其他东西

   reqs=requests.get(list_data["picUrl"])
print(reqs) #每次请求
f=open('./image/'+‘ssss.jpg’,"wb")
for reqs_data in reqs:
f.write(reqs_data)
f.close() #关闭

这样子,我们已经把图片下载下来了

可是我们不知道 什么时候下载完了 ,你也不可能一直盯着电脑

我们来个提示

for  list_data  in dict1_data:
#print(list_data["picUrl"]) 图片 仅仅是 要图片地址,不要其他东西
reqs=requests.get(list_data["picUrl"])
print(reqs) #每次请求
f=open('./image/'+‘ssss.jpg’,"wb")
for reqs_data in reqs:
f.write(reqs_data)
f.close() #关闭

print("图片已经下载完了哦!!!")

这样子 图片下载完毕之后 我们就知道已经完成了
但是 这里也会有个问题
如果你运行的话,只会有一张图片
因为 你一直请求,然后写入到 ssss.jpg ...
这里 你不能写死了 ,我们换一下,注意看看图片的连接名字,发现他们的地址都不一样,名字也不一样
http://sd/sd//sd/.01.jpg 类似这样...
我们能不能也这样子呢
再改一下代码

for  list_data  in dict1_data:
#print(list_data["picUrl"]) 图片 仅仅是 要图片地址,不要其他东西
reqs=requests.get(list_data["picUrl"])
print(reqs) #每次请求
strimg=list_data["picUrl"].split("/")[-1] #split 是 字符串截取  split("/") 是截图每次遇见/ 就截图  [-1] 是 获取最后 一次的以/的 数据  如  http://的/d/d/d1.jpg  得到的 是d1.jpg
f=open('./image/'+strimg,"wb")
   for reqs_data  in reqs:
f.write(reqs_data)
f.close() #关闭

print("图片已经下载完了哦!!!")

运行一下

这个错误呢 是我们 抓的太频繁了 ,,, 浏览器 拒绝了本次请求。。重新运行一下就行了(主要是这里没写反扒...)
下面我们重新运行一下

 

当然在这里 觉得代码太多 看着烦,可以写个函数 封装一下哦  

 就是这样哦  ,,,一不小心就爬了几百张图片了...   我只会爬这种哦.. 其他的什么都不会(一脸严肃)

 1 #coding:utf8
 2 # 插入requests 库
 3 import   requests
 4 import  json
 5 def Mian():
 6     url="http://api.tianapi.com/meinv/?key=XXX&num=10"
 7     req=requests.get(url)
 8     print(req)  #查看状态
 9     print("正在下载中...")
10     html=req.text
11     print(html)
12     #print(html_doc) #结果 为 字典  列表   字典 打印 html 内容
13     dict1=json.loads(html)  # 格式化4
14     #print("==========="+html)
15     dict1_data=dict1["newslist"]
16     #print(dict1_data)
17     for  list_data  in dict1_data:
18         #print(list_data["picUrl"])  图片
19         reqs=requests.get(list_data["picUrl"])
20         print(reqs)
21         strimg=list_data["picUrl"].split("/")[-1]
22         f=open('./image/'+strimg,"wb")
23         for reqs_data  in reqs:
24             f.write(reqs_data)
25         f.close()
26     print("图片已经下载完了哦!!!")
27 
28 
29 
30 
31 Mian()
爬取图片demo

重要的事情说三遍!!!

觉得这篇文章好的 就点点关注哦

觉得这篇文章好的 就点点关注哦

觉得这篇文章好的 就点点关注哦

 

原文地址:https://www.cnblogs.com/whatarey/p/10156908.html