python爬不同图片分别保存在不同文件夹中的实现

共 3496字,需浏览 7分钟

 ·

2021-04-06 10:52

例如,爬取赵丽颖,赵本山,赵文卓,赵欢,赵日天的图片分别保存在赵丽颖,赵本山,赵文卓,赵欢,赵日天命名的文件夹中,

测试代码

别的图就不放了

  1. import requests

  2. import time

  3. import os

  4. # 请求头,伪装成浏览器

  5. headers = {

  6. 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36'

  7. }

  8. # keyword = '云斑白条天牛' # 关键字

  9. keywords = ['赵丽颖','赵本山','赵文卓','赵欢','赵日天']

  10. max_page = 2

  11. i=1 # 记录图片数

  12. for keyword in keywords:

  13. os.makedirs(keyword)

  14. for page in range(1,max_page):

  15. page = page*30

  16. # 网址

  17. url = 'https://image.baidu.com/search/acjson?tn=resultjson_com&ipn=rj&ct=201326592&is=&fp=result&queryWord='\

  18. +keyword+'&cl=2&lm=-1&ie=utf-8&oe=utf-8&adpicid=&st=-1&z=&ic=0&hd=&latest=&copyright=&word='\

  19. +keyword+'&s=&se=&tab=&width=&height=&face=0&istype=2&qc=&nc=1&fr=&expermode=&force=&cg=wallpaper&pn='\

  20. +str(page)+'&rn=30&gsm=1e&1596899786625='

  21. # 请求响应

  22. response = requests.get(url=url,headers=headers)

  23. # 得到相应的json数据

  24. json = response.json()

  25. if json.get('data'):

  26. for item in json.get('data')[:30]:

  27. # 图片地址

  28. img_url = item.get('thumbURL')

  29. # 获取图片

  30. image = requests.get(url=img_url)

  31. # 下载图片

  32. newstr = './'+keyword+'/'+str(i)+'.jpg'

  33. # with open('./%s/%d.jpg'%keywords ,%i,'wb') as f:

  34. with open(newstr,'wb') as f:

  35. f.write(image.content) # 图片二进制数据

  36. time.sleep(1) # 等待1s

  37. print('第%d张%s图片下载完成...'%(i,keyword))

  38. i+=1

  39. print('End!')

你要修改的参数

将你想要爬的数据填入keywords 数组中即可

  1. # 这里放你要查询的数组

  2. keywords = ['','','',']

max_page是爬取百度图片的页数,一页是30张,这里写2的话就能爬30张,3能爬60张,以此类推

  1. max_page = 3

你要的代码

代码如下:

  1. import requests

  2. import time

  3. import os

  4. # 请求头,伪装成浏览器

  5. headers = {

  6. 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36'

  7. }

  8. # 这里放你要查询的数组

  9. keywords = ['','','',']

  10. max_page = 4

  11. i=1 # 记录图片数

  12. for keyword in keywords:

  13. os.makedirs(keyword)

  14. for page in range(1,max_page):

  15. page = page*30

  16. # 网址

  17. url = 'https://image.baidu.com/search/acjson?tn=resultjson_com&ipn=rj&ct=201326592&is=&fp=result&queryWord='\

  18. +keyword+'&cl=2&lm=-1&ie=utf-8&oe=utf-8&adpicid=&st=-1&z=&ic=0&hd=&latest=&copyright=&word='\

  19. +keyword+'&s=&se=&tab=&width=&height=&face=0&istype=2&qc=&nc=1&fr=&expermode=&force=&cg=wallpaper&pn='\

  20. +str(page)+'&rn=30&gsm=1e&1596899786625='

  21. # 请求响应

  22. response = requests.get(url=url,headers=headers)

  23. # 得到相应的json数据

  24. json = response.json()

  25. if json.get('data'):

  26. for item in json.get('data')[:30]:

  27. # 图片地址

  28. img_url = item.get('thumbURL')

  29. # 获取图片

  30. image = requests.get(url=img_url)

  31. # 下载图片

  32. newstr = './'+keyword+'/'+str(i)+'.jpg'

  33. # with open('./%s/%d.jpg'%keywords ,%i,'wb') as f:

  34. with open(newstr,'wb') as f:

  35. f.write(image.content) # 图片二进制数据

  36. time.sleep(1) # 等待1s

  37. print('第%d张%s图片下载完成...'%(i,keyword))

  38. i+=1

  39. print('End!')

到此这篇关于python爬不同图片分别保存在不同文件夹中的实现的文章就介绍到这了

扫下方二维码加老师微信

或是搜索老师微信号:XTUOL1988【切记备注学习Python】

邀您来听Python web开发,Python爬虫,Python数据分析,人工智能 免费精品教程0基础入门到企业项目实战教学!


扫一扫
更多咨询早知道!



欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持


万水千山总是情,点个【在看】行不行

*声明:本文于网络整理,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权事宜

浏览 40
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报