往期回顾

Python实现自动监测Github项目并打开网页

Python实现文件自动归类

Python实现帮你选择双色球号码

Python实现每日更换“必应图片”为“桌面壁纸”

Python实现批量加水印

Python实现破译zip压缩包

前言

今天我们就利用python脚本实现批量下载百度图片。直接开整~

效果展示

编写思路:

1.获取图片的url链接

首先,打开百度图片首页,注意下图url中的index

接着,把页面切换成传统翻页版(flip),因为这样有利于我们爬取图片!

然后,右键检查网页源代码,直接(ctrl+F)搜索 objURL

这样,我们发现了需要图片的url了。

2.把图片链接保存到本地

现在,我们要做的就是将这些信息爬取出来。

注:网页中有objURL,hoverURL…但是我们用的是objURL,因为这个是原图

正则表达式获取objURL

results = re.findall('"objURL":"(.*?)",', html)

源码展示:

1.获取图片url代码:

# 获取图片url连接for i in range(int(pn)):# 1.获取网页print('正在获取第{}页'.format(i+1))# 百度图片首页的url# name是你要搜索的关键词# pn是你想下载的页数url = 'https://image.baidu.com/search/flip?tn=baiduimage&ie=utf-8&word=%s&pn=%d' %(name,i*20)headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.104 Safari/537.36 Core/1.53.4843.400 QQBrowser/9.7.13021.400'}# 发送请求,获取相应response = requests.get(url, headers=headers)html = response.content.decode()# print(html)# 2.正则表达式解析网页# "objURL":"http://n.sinaimg.cn/sports/transform/20170406/dHEk-fycxmks5842687.jpg"results = re.findall('"objURL":"(.*?)",', html) # 返回一个列表# 根据获取到的图片链接,把图片保存到本地save_to_txt(results, name, i)</pre>

2.保存图片到本地代码:

# 保存图片到本地j = 0# 在当目录下创建文件夹if not os.path.exists('./' + name):os.makedirs('./' + name)# 下载图片for result in results:print('正在保存第{}个'.format(j))try:pic = requests.get(result, timeout=10)time.sleep(1)except:print('当前图片无法下载')j += 1continue# 可忽略,这段代码有bug# file_name = result.split('/')# file_name = file_name[len(file_name) - 1]# print(file_name)## end = re.search('(.png|.jpg|.jpeg|.gif)/pre>, file_name)# if end == None:#     file_name = file_name + '.jpg'# 把图片保存到文件夹file_full_name = './' + name + '/' + str(i) + '-' + str(j) + '.jpg'with open(file_full_name, 'wb') as f:f.write(pic.content)j += 1

核心代码:
pic = requests.get(result, timeout=10)
f.write(pic.content)

3.主函数代码:

# 主函数
if __name__ == '__main__':name = input('请输入你要下载的关键词:')pn = input('你想下载前几页(1页有60张):')get_parse_page(pn, name)

文章到这里就结束了,感谢你的观看,Python实用脚本系列,下篇文章分享天气查询应用

为了感谢读者们,我想把我最近收藏的一些编程干货分享给大家,回馈每一个读者,希望能帮到你们。

干货主要有:

① 2000多本Python电子书(主流和经典的书籍应该都有了)

② Python标准库资料(最全中文版)

③ 项目源码(四五十个有趣且经典的练手项目及源码)

④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)

⑤ Python学习路线图(告别不入流的学习)

⑥ 两天的Python爬虫训练营直播权限

All done~详见个人简介或者私信获取完整源代码。。

Python实用案例,Python脚本,Python实现批量下载百度图片相关推荐

  1. python爬虫实现批量下载百度图片

    今天和小伙伴们合作一个小项目,需要用到景点图片作为数据源,在百度上搜索了一些图片,感觉一个一个手动保存太过麻烦,于是想到用爬虫来下载图片. 本次代码用到了下列一些python模块,需要预先安装Beau ...

  2. urllib3批量下载百度图片

    ''' urllib3批量下载百度图片 ''' import urllib3 import re start_url = 'http://image.baidu.com/search/index?tn ...

  3. 用python批量下载网络图片大全_实战干货:用 Python 批量下载百度图片!

    为了做一个图像分类的小项目,需要制作自己的数据集.要想制作数据集,就得从网上下载大量的图片,再统一处理. 这时,一张张的保存下载,就显得很繁琐.那么,有没有一种方法可以把搜索到的图片直接下载到本地电脑 ...

  4. 用 Python 批量下载百度图片

    为了做一个图像分类的小项目,需要制作自己的数据集.要想制作数据集,就得从网上下载大量的图片,再统一处理. 这时,一张张的保存下载,就显得很繁琐.那么,有没有一种方法可以把搜索到的图片直接下载到本地电脑 ...

  5. node 批量下载百度图片壁纸

    分析百度图片请求的参数 https://image.baidu.com/search/acjson?tn=resultjson_com&ipn=rj&word="+keyWo ...

  6. Python实用案例,python10行脚本打造实时截图识别OCR,轻松搞定“百度文库”

    前言 今天,我们就来做一款实时截图识别的小工具 开发工具 Python版本: 3.9.4 相关模块: PIL模块 keyboard模块 pytesseract模块 以及一些Python自带的模块 效果 ...

  7. python脚本编程——将批量的长方形图片切割成多个正方形图片

    简介 在处理.mat文件得到图片(bmp)时,转成的图片尺寸大小与.mat文件有关.两个特征的.mat文件分别是1294*86和1294*128大小.这也是两个文件中的图片大小,由于模型输入需要的是批 ...

  8. python批量下载网页文件-超简单超详细python小文件、大文件、批量下载教程

    按照不同的情况,python下载文件可以分为三种: 小文件下载 大文件下载 批量下载 python 小文件下载 流程:使用request.get请求链接,返回的内容放置到变量r中,然后将r写入到你想放 ...

  9. python怎么批量下载图片_怎样批量下载在线图片?

    原标题:怎样批量下载在线图片? 大家早啊,我是云景,以前分享过很多关于批量下载图片的技巧,有使用插件程序的,有使用工具的. 之前也教过大家怎么使用F12开发者 今天给大家分享的是,使用Python来批 ...

最新文章

  1. 牛X,一系列Chrome 灵魂插件!爱了爱了!
  2. 马斯克:十年内可把人脑与AI计算机连接起来
  3. 查看TensorFlow的版本和路径
  4. ML之k-NN:k-NN实现对150朵共三种花的实例的萼片长度、宽,花瓣长、宽数据统计,根据一朵新花的四个特征来预测其种类
  5. 新书速递 | 《知识图谱:方法、实践与应用》
  6. pat乙级相当于什么水平_雅思6.5是什么水平?相当于托福多少分?
  7. 随笔 - Andriod
  8. 库克退休前将再推出一个新品类?可能是AR眼镜
  9. 终端实体店消费者喜爱的营销方式
  10. SCPPO(九):性能优化之停工装置按照开工装置更新价格
  11. vue $emit子组件传出多个参数,如何在父组件中在接收所有参数的同时添加自定义参数...
  12. 虚拟应用DemoApp功能演示详解
  13. 【微信小程序开发日记01】和风天气OUC之初步构想
  14. AutoCAD .Net 程序自动加载 AutoLoader
  15. MaxCompute 助力衣二三构建智能化运营工具
  16. 20年21年嵌入式校招薪资大曝光!!!
  17. 3D成像方法汇总(原理解析):双目视觉、激光三角、结构光、ToF、光场、全息...
  18. js处理json数组
  19. Python爬音乐--qq
  20. 友善之臂NanoPC-T4嵌入式开发板 开箱

热门文章

  1. qq聊天纪录被删除应该如何恢复
  2. HTML5 屏幕适配笔记
  3. 一位计算机牛人的心得,谈到计算机和数学,很实用~
  4. 走进小程序【十一】微信小程序【使用Echarts 和 腾讯地图】
  5. WordPress快速增加百度收录的方法
  6. 电子签名屏什么牌子好
  7. 戴尔服务器虚拟机巨兽龙在哪,dell服务器安装的vmware esxi 虚拟机紫萍
  8. Caused by: java.sql.BatchUpdateException: ORA-00001: 违反唯一约束条件 (DSPACE.SYS_C007868)
  9. python 画老虎
  10. ps画画模糊笔刷_用ps污点画笔修复工具讲图片变成朦胧效果