温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
  • 忘记密码?
登录注册×
获取短信验证码
其他方式登录
点击 登录注册 即表示同意 《亿速云用户服务条款》
  • 服务器
  • 数据库
  • 开发技术
  • 网络安全
  • 互联网科技
登 录 注册有礼
最新更新 网站标签 地图导航
产品
  • 首页 > 
  • 教程 > 
  • 开发技术 > 
  • 编程语言 > 
  • 如何使用python批量下载图片

如何使用python批量下载图片

发布时间:2020-11-10 09:38:44 来源:亿速云 阅读:226 作者:小新 栏目: 编程语言

如何使用python批量下载图片?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!

使用环境:python3+pycharm+requests+re+BeatifulSoup+json

步骤:

1、然后找到你需要下载图片的网站。

2、找到需要下载的图片,在搜索界面查看源码,发现这个和前面的分析如出一辙,它的图片id藏在js里面。我们只需通过正则解析。拿到id然后拼凑url即可完成所有图片地址

3、我们尝试能不能获得一个简单通用的url地址

代码与总结

import requests
from urllib import parse
from bs4 import BeautifulSoup
import re
import json
header = {
 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36',
 'Cookie': 'wluuid=66; ',
 'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3',
 'Accept-encoding': 'gzip, deflate, br',
 'Accept-language': 'zh-CN,zh;q=0.9',
 'Cache-Control': 'max-age=0',
 'connection': 'keep-alive'
 , 'Host': 'stock.tuchong.com',
 'Upgrade-Insecure-Requests': '1'
 }
def mkdir(path):
 import os# 引入模块
 path = path.strip()# 去除首位空格
 path = path.rstrip("\\") # 去除尾部 \ 符号
 isExists = os.path.exists(path) # 判断路径是否存在 # 存在 True # 不存在 False
 if not isExists: # 判断结果
 os.makedirs(path)# 如果不存在则创建目录 # 创建目录操作函数
 return True#print (path + ' 创建成功')
 else:
 # 如果目录存在则不创建,并提示目录已存在
 #print(path + ' 目录已存在')
 return False
def downloadimage(imageid,imgname):##下载大图和带水印的高质量大图
 url = 'https://weiliicimg9.pstatp.com/weili/l/'+str(imageid)+'.webp'
 url2 = 'https://icweiliimg9.pstatp.com/weili/l/'+str(imageid)+'.webp'
 b=False
 r = requests.get(url)
 print(r.status_code)
 if(r.status_code!=200):
 r=requests.get(url2)
 with open(imgname+'.jpg', 'wb') as f:
 f.write(r.content)
 print(imgname+" 下载成功")
def getText(text,free):
 texturl = parse.quote(text)
 url="https://stock.tuchong.com/"+free+"search?term="+texturl+"&use=0"
 print(url)
 req=requests.get(url,headers=header)
 soup=BeautifulSoup(req.text,'lxml')
 js=soup.select('script')
 path=''
 if not free.__eq__(''):
 js=js[1]
 path='无水印/'
 else:
 js=js[4]
 path='图虫创意/'
 print(js)
 pattern = re.compile(r'window.hits = (\[)(.*)(\])')
 va = pattern.search(str(js)).group(2)#解析js内容
 print(va)
 va = va.replace('{', '{').replace('}', '},,')
 print(va)
 va = va.split(',,,')
 print(va)
 index = 1
 for data in va:
 try:
 dict = json.loads(data)
 print(dict)
 imgname='img2/'+path+text+'/'+dict['title']+str(index)
 index+=1
 mkdir('img2/'+path+text)
 imgid=dict['imageId']
 downloadimage(imgid,imgname)
 except Exception as e:
 print(e)
if __name__ == '__main__':
 num=input("高质量大图带水印输入1,普通不带水印输入2:")
 num=int(num)
 free=''
 if num==2:
 free='free/'
 text = input('输入关键词:')
 getText(text,free)

这样,整个流程就完成了,在使用方面,先输入1或2(1代表有水印高质量图,2代表共享图),在输入关键词即可批量下载。

如何使用python批量下载图片

感谢各位的阅读!看完上述内容,你们对如何使用python批量下载图片大概了解了吗?希望文章内容对大家有所帮助。如果想了解更多相关文章内容,欢迎关注亿速云行业资讯频道。

向AI问一下细节
推荐阅读:
  1. 使用python怎么自动下载图片
  2. 使用Node.js怎么批量下载图片

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

python
  • 上一篇新闻:
    python django框架的特点是什么
  • 下一篇新闻:
    怎样实现python接口自动化

猜你喜欢

  • php中pdo的作用是什么
  • php怎么使用pdo连接数据库
  • idea连接MySQL导入表的方法是什么
  • linux中iostat命令的作用是什么
  • java自定义异常的方法是什么
  • java怎么判断是不是这个类
  • C++匿名函数和普通函数有什么区别
  • lambda在算法中的作用是什么
  • golang通道清空数据的方法是什么
  • c语言print和printf有什么区别
最新资讯
  • 如何使用React实现一个实时聊天应用
  • React中的数字格式化和货币格式化如何处理
  • 如何处理React应用中的多语言文本
  • React中的日期和时间格式化如何处理
  • 如何使用react-intl或react-i18next进行国际化
  • React中的国际化和本地化是如何处理的
  • 如何将React Web组件转换为React Native组件
  • 如何使用React Native开发移动应用
  • React Native与React Web有何不同
  • Next.js中的静态生成和服务器端渲染有何不同
相关推荐
  • 怎么在Python中使用requests模块下载图片
  • 怎么在Python中使用request模块下载图片
  • 使用Unity3D怎么实现批量下载图片功能
  • 使用nodejs怎么批量下载图片
  • nodejs如何制作爬虫实现批量下载图片
  • 使用php怎么强制下载图片
  • 怎么在PHP中利用多线程批量下载图片
  • 使用PHP怎么批量下载图片
  • 如何使用python 批量下载图片
  • 如何使用python爬取百度图片网站并批量下载图片

相关标签

python3.7 python函数 python集合 python第三方库 python递归 python小项目 python编程工具 micropython python鸭子类型 python小程序 python简介 python numpy python -v 学习python python3.6.1 python异常 python pycharm python语言基础 python编程语言 python3 os
AI

深圳SEO优化公司苏州网站关键词优化推荐扬州网站搭建价格福永网络营销公司晋城百度爱采购公司滨州网站优化排名汕尾阿里店铺运营价格太原网站排名优化哪家好鹤岗网站搜索优化推荐呼和浩特网站优化长沙营销网站多少钱甘南网站设计哪家好和县网站设计模板价格阜新网站制作价格通辽百度标王哪家好阿坝网站设计多少钱汉中网站推广工具哪家好德宏百度标王公司常德seo网站推广多少钱惠州网站搭建丽水网站推广系统报价布吉外贸网站建设多少钱乐山关键词按天收费多少钱贵港seo网站推广报价崇左网页制作哪家好光明网站优化报价益阳网站推广系统价格南充网站优化排名宜宾网站设计模板多少钱果洛企业网站改版多少钱海口外贸网站设计推荐歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化