Python 自动化办公实战课
尹会生
前游戏公司技术总监,前新浪网研发中心技术经理
21781 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 37 讲
Python 自动化办公实战课
15
15
1.0x
00:00/00:00
登录|注册

18|http库:如何批量下载在线内容,解放鼠标(上)?

使用XPath查找图片下载地址
使用浏览器的调试界面观察代码
保存图片
得到返回结果
发送“GET”请求
启动一个会话
设置请求的URL
访问HTTP服务器
安装requests-html库
使用requests-html库
结合批量改名功能实现下载后的文件自动改名
利用Python代替浏览器实现批量下载
XPath搜索工具
requests-html库
使用循环,下载多张图片
使用XPath,匹配多张图片下载地址
使用requests-html下载一张图片
访问HTTP服务端的资源
存储大量猫的图片
训练AI识别猫
思考题
小结
如何批量下载图片
批量下载图片的准备工作
使用Python的“requests-html”库实现批量下载
下载大量图片需求
HTTP库:如何批量下载在线内容,解放鼠标(上)

该思维导图由 AI 生成,仅供参考

你好,我是尹会生。
我在前段时间遇到了下载大量图片的需求。具体来说,是在我训练 AI 识别猫时,必须要在电脑中存储大量猫的图片。但搜索到的图片都在网页中,我就需要先把它们一个个手动下载下来,再保存,然后才能进行后续的工作。
而且,随着我对 AI 训练工作的日益增多,这类需求会越来越丰富,我不仅要下载猫的图片,还要下载大量其他各种动物的图片。相信类似这种批量下载网页中的图片的需求,你在工作中会经常遇到。而这类需求,刚好能够使用 Python 的“requests-html”库实现批量下载,提高我们的工作效率。
因此呢,这节课我就以搜索到的猫的图片为例,给你讲解一下,我是怎么来批量下载图片的。

批量下载图片的准备工作

我把实现图片自动化批量下载的过程,拆分成四段难度逐渐递增的代码。这四段代码分别实现的是以下四个功能:
访问 HTTP 服务器,得到搜索结果的整个网页;
在访问服务器之后下载一张图片;
找到多张图片的相似地址;
提取相似地址,下载多张图片。
前两个功能,是批量下载图片的准备工作和前提。掌握了这两个功能,那么批量下载图片实现起来就容易多了。所以接下来,我们先来学习这两项准备工作。

访问 HTTP 服务端的资源

我们从难度最低的一段代码开始,怎么通过访问 HTTP 服务器,从而得到猫的搜索结果的整个网页。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

使用Python的“requests-html”库可以帮助批量下载在线图片。本文以下载猫的图片为例,分为四个功能:访问HTTP服务器得到搜索结果的整个网页、下载一张图片、找到多张图片的相似地址以及提取相似地址并下载多张图片。文章详细介绍了使用requests-html库发送GET请求,得到网页源代码的过程,并强调了使用该库的简洁性和效率。作者还提到了代码中的一些技巧,如使用变量来重复使用重复的逻辑,以及如何判断服务器返回的状态码。整体来说,本文以简洁的代码和清晰的解释,帮助读者快速了解了如何利用Python库来批量下载在线图片,为读者提供了实用的技术指导。文章内容涵盖了使用requests-html下载单张图片和批量下载图片的基础知识,以及使用XPath匹配多张图片下载地址的方法。通过这两个库的配合使用,读者可以利用Python代替浏览器,实现图片、文字、视频等资源的批量下载。文章还提出了思考题,鼓励读者分享想法和交流讨论。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《Python 自动化办公实战课》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(6)

  • 最新
  • 精选
  • Geek_a1056f
    老师,这个爬虫有什么区别吗

    作者回复: 广义上,爬虫包含了数据抓取,存储,分析,展示等一套工作流,http库只实现了其中最关键的数据抓取,下载后的数据还要存储,做格式处理后,才能变成有用的数据

    2023-04-29归属地:山东
    1
  • 36度道
    requests-html库和requests库之间有什么区别吗?

    作者回复: 对requests进行了二次封装,支持了js渲染,算得上目前最火的Python HTTP客户端了

    2021-05-11
    1
  • 星辰
    通过百度图片搜索批量下载有完整代码吗?

    作者回复: https://github.com/wilsonyin123/python_productivity

    2021-12-12
  • Len
    凄凄切切

    编辑回复: 加油呀!

    2021-11-29
  • ifelse
    学习打卡
    2023-07-15归属地:浙江
  • IT小村
    Python的beatiful soup更胜一筹
    2022-06-01
收起评论
显示
设置
留言
6
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部