Python批量下载无版权图片

论坛 期权论坛 期权     
Python开发   2019-6-29 20:44   2523   0
[/url]
[url=https://mp.weixin.qq.com/s?__biz=Mzg5MzAyNDI4Mw==&mid=2247483912&idx=3&sn=4e16e34c2a6d9acb72683fcaeeb98631&scene=21#wechat_redirect]黑客技术
点击右侧关注,了解黑客的世界!


Linux编程点击右侧关注,免费入门到精通!


程序员严选甄选正品好物,程序员生活指南!




作者丨pk哥
本文经授权转载于公众号:Python知识圈(ID:PythonCircle)

前言

生活或者工作中,不管是写文章、公司 UI 交互图还是广告图等等都需要用到图片,图片的优点和重要性自不用说。

图片我们可不能随便从网上搜索来用,我们得注意图片的版权。我一般是在无版权的网站上找图片,比如我常用的 pixabay 网站,打开网站,搜索我们需要的主题图片,结果,加载大半天,还是下面这样的。。。




这大大的影响我们的效率和心情啊,因为这网站的服务器是国外的,所有才会这么慢。




作为一个追求工作和生活高效率的 Pythoner,这个实在忍不了。



于是我用决定用 Python 写一个简单的爬虫,把不同主题的图片分别保存在本地,下次需要用图的时候直接在本地浏览选择就行了。

[h1]页面元素分析[/h1]
浏览器中 F12 调试,我们看看单个图片的 url 链接,大部分的图片 url 都在 「data-lazy-srcset」 属性里。



[h1][/h1][h1]正则提取元素[/h1]
我们用正则表达式提取出一个页面所有的图片 url,比如我提取第 2 页所有的图片 url,并把这些 url 放在列表里,方便接下来调用后下载图片。




创建目录

我们给不同的主题图片主动新建文件夹保存,包括「素材图片」文件夹前面的路径大家换成自己路径,我用的 Mac 电脑路径和 windows 系统路径不同,大家根据情况替换。后面的 direcory 参数是我们输入的查询图片的关键字,根据我们输入的关键字来创建主题文件夹储存下载的图片。



[h1][/h1][h1]下载图片[/h1]
我们把提取出来的图片下载下来,open 后面的 wb+ 表示以二进制读写模式打开。




最后,pk 哥用 input 方法让大家自行输入查询的英文关键字,「pagi」后的参数是页面,我用 for 循环让它爬取前 5 页。




运行代码,pk 哥输入英文关键字后回车,效果如下。



[h1][/h1][h1]效果展示[/h1]
把自己常用的主题图都下载在本地,以后找图再也不用等了,爽歪歪。




推荐↓↓↓





16个技术公众号】都在这里!
涵盖:程序员大咖、源码共读、程序员共读、数据结构与算法、黑客技术和网络安全、大数据科技、编程前端、Java、Python、Web编程开发、Android、iOS开发、Linux、数据库研发、幽默程序员等。
万水千山总是情,点个 “在看” 行不行
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:15
帖子:3
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP