图库网站Unsplash高清原图爬虫【华为云技术分享】
【摘要】 写博客的好工具,快速获得高清图片
在百度图片爬虫小助手里,我开发了一个爬虫,来节约我写博客时搜集图片的时间。
但是,也出现了一些问题,主要有以下几点:
- 百度图片上的质量参差不齐,大部分图片质量不够
- 图片分辨率普遍不够
- 图片存在版权问题,许多图片存在水印或logo
针对上面的几个问题,我找了一个新的图库网站Unsplash来获得图片。
Unsplash上的图片都是免费的,因此不存在水印的问题,而且,针对同一图片,还提供不同尺寸(raw,full,regular,small,thumb),就我发博客这一需求而言,regular级别的图片已经可以满足。
进入Unsplash,打开F12开发者工具抓包,输入关键字boy,试图找到相关的request,得到了这些信息

上图红色框是接口地址,蓝色框中是向这个接口发送的入参,我们再看一下这个接口返回的数据。

红色框中返回了20条数据,正好对应的向接口发送的入参per_page:20(即每页返回20张图片信息),查看每一张图片的信息,可以看到以下内容。

红色框中正是图片的URL地址,绿色框中用了一句话对图片进行大致描述,而蓝色框中可以看出,图片根据不同尺寸分了好几种规格,这应该是方便在不同的设备之间进行显示。

由于Unplash是国外的图库网站,因此并不支持中文查询。但这可难不倒我们,在网上找了个翻译接口将中文翻译成英文,就可以解决这个问题了,我采用的是百度的翻译接口,这里就不展开讲述了。

爬虫的流程
我们看一下爬虫的结果吧!

爬虫下载的“programmer”部分图片

爬虫下载的“boy”部分图片
可以看出,下载的图片质量是非常不错的。为了加速爬虫,并节约硬盘资源,我选择下载reular级别的图片,下面我们看一下这个级别的图片在博客上展示有没有什么问题。


总的来说,Unsplash上的图片质量是比百度图库要好的,但有些特殊的词,Unsplash收录的图片数量就没有百度图库多了,有时间再将Unsplash爬虫与百度爬虫结合起来,希望我的博客在编辑速度以及美观方面能有所提升。
来源:华为云社区 作者:开飞机的大象
图库网站Unsplash高清原图爬虫【华为云技术分享】的更多相关文章
- Python爬虫从入门到精通——基本库re的使用:正则表达式【华为云技术分享】
置顶:华为云618大促火热进行中,全场1折起,免费抽主机,消费满额送P30 Pro,点此抢购. 正则表达式是处理字符串的强大工具,它有自己特定的语法结构,有了它,实现字符串的检索.替换.匹配验证都不在 ...
- 【华为云实战开发】8.如何快速搭建C#网站并实现持续集成?【华为云技术分享】
1 概述 1.1 文章目的 本文通过一个实例介绍如何使用软件开发服务DevCloud完成一个C#Web项目的开发. 1.2 项目详情 1. 项目名称:超级冷笑话网站 2. 项目简介:一个Web网站,包 ...
- 【Python3网络爬虫开发实战】6.4-分析Ajax爬取今日头条街拍美图【华为云技术分享】
[摘要] 本节中,我们以今日头条为例来尝试通过分析Ajax请求来抓取网页数据的方法.这次要抓取的目标是今日头条的街拍美图,抓取完成之后,将每组图片分文件夹下载到本地并保存下来. 1. 准备工作 在本节 ...
- 【华为云实战开发】9.如何进行PHP项目的快速搭建并实现CICD?【华为云技术分享】
1 概述 1.1 文章目的 本文主要想为研发PHP项目的企业或个人提供上云指导,通过本文中的示例项目 “workerman-todpole”,为开发者提供包括项目管理,代码托管,代码检查,编译构建,测 ...
- webpack4.0各个击破(6)—— Loader篇【华为云技术分享】
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/devcloud/article/detai ...
- MySQL数据库开发的36条原则【华为云技术分享】
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/devcloud/article/detai ...
- Python面试的一些心得,与Python练习题分享【华为云技术分享】
版权声明:本文为CSDN博主「华为云」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明.原文链接:https://blog.csdn.net/devcloud/arti ...
- 【华为云实战开发】10.经典的C++项目怎么在云端开发?【华为云技术分享】
1 概述 1.1 文章目的 本文主要想为研发C++项目的企业或个人提供上云指导,通过本文中的示例项目 “音频解析器”,为开发者提供包括项目管理,代码托管,代码检查,编译构建,测试管理的操作指导,覆盖软 ...
- MySQL 8.0新增特性详解【华为云技术分享】
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/devcloud/article/detai ...
随机推荐
- Linux 学习(1) | 学习方向导图
方向导图 文件系统导图 内核导图
- Helm 3 发布 | 云原生生态周报 Vol. 27
作者 | 墨封.元毅.冬岛.敖小剑.衷源 业界要闻 1.Helm 3 发布 美国时间 11 月 13 日,Helm 团队发布 Helm 3 第一个稳定版本.Helm 3 以 Helm 2 的核心特性为 ...
- jquery设置html5音量的方法
jquery设置html5音量的方法<pre> setTimeout(function() { alert(1); $('#music1')[0].volume = 0; setTimeo ...
- C语言I博客作业08
这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 作业 我在这个课程的目标是 熟悉使用while和do-while结构解决问题 这个作业在那个具体方面帮助我实现目标 pta题目及查找的资料 ...
- 关于html与css的标签及属性(text文本属性、背景background属性、表格标签table、列表、)
text文本属性1.颜色 colorcolor:red: 2.文本缩进text-indant属性值 num+px text-indant:10px:3.文本修饰 text-decoration属性值: ...
- Ubuntu 16.04 安装Maven3.3.9
1 下载地址 http://maven.apache.org/download.cgi 2 将下载到的apache-maven-3.3.9-bin.tar.gz文件上传到/temp目录下,然后切换到r ...
- PowerMock学习(四)之Mock static的使用
我们编写代码的时候,总会写一些工具类,为了方便调用喜欢使用static关键字来修饰对应方法. 那么现在举例说明,还是准备两个接口,第一个是查询学生总数,第二个是新增学生两个接口,具体示例代码如下: p ...
- SpringBoot 正式环境必不可少的外部化配置
前言 <[源码解析]凭什么?spring boot 一个 jar 就能开发 web 项目> 中有读者反应: 部署后运维很不方便,比较修改一个 IP 配置,需要重新打包. 这一点我是深有体会 ...
- Spring Boot 2.X(十八):集成 Spring Security-登录认证和权限控制
前言 在企业项目开发中,对系统的安全和权限控制往往是必需的,常见的安全框架有 Spring Security.Apache Shiro 等.本文主要简单介绍一下 Spring Security,再通过 ...
- 如何在maven中下载jar包
1.进入maven网址 https://mvnrepository.com/ 2.搜索你想要的包的名字 3.找到列表中你想要的包 4.点击一个版本 5.点击 view all 6.找到你想要的包,点 ...
