python之高清图片爬取了解一下

简介: 高清图片爬取了解一下前段时间在知乎看到一篇文章,关于视觉中国如何从腾讯身上扒一层皮的事情。大意就是互联网巨头在没有经过授权的情况下使用了9张来自视觉中国的照片,最后的结果是以赔偿视觉中国4w结束。

高清图片爬取了解一下

img_b73e7e89b4302f996ce591d9e6a253f7.jpe

前段时间在知乎看到一篇文章,关于视觉中国如何从腾讯身上扒一层皮的事情。大意就是互联网巨头在没有经过授权的情况下使用了9张来自视觉中国的照片,最后的结果是以赔偿视觉中国4w结束。原文链接:

https://zhuanlan.zhihu.com/p/35045810 感兴趣的可以看看。

当然这对于我们普通人而言几乎没有什么影响。但我们要知道图片版权这回事。

今天带大家爬取的图片网站是:https://unsplash.com/ 

这里的图片没有版权,你可以随便使用。而且这里面的图片质量都特别高。我的一些图片都是从这上面找的

Ajax加载图片

第一步,请求网页

我们打开网站,下拉页面发现不断加载图片,但是整个页面没有刷新,也就是页面的链接没有变化。其实这个过程就是Aiax加载的过程。

Ajax请求有特殊的类型,它叫做 xhr ,我们打开开发者工具或者按 F12键,切换到Network。

img_602d15733e513871460ac143b65b1c5d.jpe

 下方切换到 XHR 这里面都是经过Ajax加载的。我们往下多点几个链接发现,下方的三个参数只有 page 在变化,于是我们可以构造这个参数。来提交请求。

```

def get_page(page,headers):

url = 'https://unsplash.com/napi/photos'

   data = {

       'page': page,

       'per_page': 12,

       'order_by': 'latest'

   }

   response = requests.get(url, headers=headers, params=data)

   if response.status_code == 200:

       return response.json()

```

第二步:解析网页并得到图片链接

接着切换到Prereview选项卡,看到返回的是json数据。继续找发现图片链接在 download 里面,我们复制一个链接在浏览器里打开发现分析的没错。

img_8b0a8fcbc66bceb2b3c82570a3e08941.jpe

接下来,再实现一个解析方法:提取每条数据的links字段里的download,将图片的链接返回。

```

def get_image(json,headers):

for item in json:

images = item['links']['download']#这句借鉴大佬代码,真的是厉害了

print('正在下载:',images)

urllib3.disable_warnings()

response = requests.get(images,headers=headers,verify=False)

return response,images

```

最后保存到本地

def save_images(response,images):

if '图片' not in os.listdir('.'):

os.mkdir('图片')# 创建文件夹

os.chdir('图片')# 进入文件夹下

filename = images.split('/')[-2] + '.jpg'

with open(filename, 'wb') as f:

f.write(response.content)

os.chdir('..')# 返回上级目录

if __name__ == '__main__':

headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36'

 '(KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36',

 'referer': 'https://unsplash.com/'

}

for i in range(1,10):

json = get_page(i,headers)

response,images = get_image(json,headers)

save_images(response,images)

总结

承认自己还有许多不足,代码还有许多可以改进的地方

本文还可以扩展,比如说实现指定关键字work,beauty,nature 等下载图片

代码不是一下子就写出来的,要经过不断调试,出错是很正常的,不断地发现错误并解决才能有所进步。学习的过程中善用搜索引擎,多思考。希望与你一同学习。

原创不易,觉得不错点个赞再走呗。

公众号:sixkery

目录
相关文章
|
1月前
|
机器学习/深度学习 编解码 Python
Python图片上采样工具 - RealESRGANer
Real-ESRGAN基于深度学习实现图像超分辨率放大,有效改善传统PIL缩放的模糊问题。支持多种模型版本,推荐使用魔搭社区提供的预训练模型,适用于将小图高质量放大至大图,放大倍率越低效果越佳。
172 3
|
1月前
|
机器学习/深度学习 文字识别 Java
Python实现PDF图片OCR识别:从原理到实战的全流程解析
本文详解2025年Python实现扫描PDF文本提取的四大OCR方案(Tesseract、EasyOCR、PaddleOCR、OCRmyPDF),涵盖环境配置、图像预处理、核心识别与性能优化,结合财务票据、古籍数字化等实战场景,助力高效构建自动化文档处理系统。
367 0
|
5月前
|
数据采集 Web App开发 JavaScript
基于Selenium的Python爬虫抓取动态App图片
基于Selenium的Python爬虫抓取动态App图片
374 68
|
3月前
|
数据采集 存储 监控
Python爬虫实战:批量下载亚马逊商品图片
Python爬虫实战:批量下载亚马逊商品图片
|
5月前
|
存储 机器学习/深度学习 人工智能
多模态RAG实战指南:完整Python代码实现AI同时理解图片、表格和文本
本文探讨了多模态RAG系统的最优实现方案,通过模态特定处理与后期融合技术,在性能、准确性和复杂度间达成平衡。系统包含文档分割、内容提取、HTML转换、语义分块及向量化存储五大模块,有效保留结构和关系信息。相比传统方法,该方案显著提升了复杂查询的检索精度(+23%),并支持灵活升级。文章还介绍了查询处理机制与优势对比,为构建高效多模态RAG系统提供了实践指导。
1525 0
多模态RAG实战指南:完整Python代码实现AI同时理解图片、表格和文本
|
Python
Python实用记录(六):如何打开txt文档并删除指定绝对路径下图片
这篇文章介绍了如何使用Python打开txt文档,删除文档中指定路径的图片,并提供了一段示例代码来展示这一过程。
155 1
|
计算机视觉 Python
Python实用记录(一):如何将不同类型视频按关键帧提取并保存图片,实现图片裁剪功能
这篇文章介绍了如何使用Python和OpenCV库从不同格式的视频文件中按关键帧提取图片,并展示了图片裁剪的方法。
433 0
|
Python
Socket学习笔记(二):python通过socket实现客户端到服务器端的图片传输
使用Python的socket库实现客户端到服务器端的图片传输,包括客户端和服务器端的代码实现,以及传输结果的展示。
478 3
Socket学习笔记(二):python通过socket实现客户端到服务器端的图片传输
|
Python
Python实用记录(四):os模块-去后缀或者改后缀/指定目录下图片或者子目录图片写入txt/csv
本文介绍了如何使用Python的os模块来操作文件,包括更改文件后缀、分割文件路径和后缀、将指定目录下的所有图片写入txt文档,以及将指定目录下所有子目录中的图片写入csv文档,并为每个子目录分配一个标签。
182 1
|
Python
Python实现图片的拼接
Python实现图片的拼接
155 0

热门文章

最新文章

推荐镜像

更多