python 图片爬虫记录

感谢大家的点赞。再补充一点。

对于这个 url

https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjEqB5nighYsMZE7kexaVNJfxy3OkRutNEKatksw9u5f-ckHNROLzFyx2Uty3zYWNEaeOmzsljGr3eARiDWaM9DM8G2hPuPf8uZP0NO3kNUCnM2Cjb3ZKtLhJDBwqeR4ElpJ7ID5_wIHGQ/s200


  1. 这个url最后的 s200, 是我手动修改的,得到图片高度是 200像素。这个是很有趣!
  2. 如果把 s200 换成 s100, 得到图片高度是 100像素。
  3. 实际上,把 s200 换成任意的 s【XXX】, 服务器就会自动给你想要的尺寸。
  4. 如果是 s0, 那么是 原始尺寸。
  5. 如果 s200 不加的话,默认会返回 s1600

看了2-3个小时的奥运会, 感觉内心空虚。 写点代码。 不知道做什么,随便搞一下爬虫,积累一点经验, 写篇博客,记录一下。

1. 注意检查响应头

情况描述:
txt 复制代码
对于这样一个  图片的 url 

https://blogger.googleusercontent.com/img/a/AVvXsEjZ5whhS_q0FYJHMI1Zmubr8JVb6EaTSH37a5iKs-mY-NHuchpesWGTLJSI8u138t-l_iqy5q66Yw2k0Dlb9hmIxQh7EEwOquiU8LnhS5zwKv28bXtQHF6kR8r5xSFVpDOQNquTpxqq2f9nI-JkCEVRTczD6TRqUnOeZMew3gOdTIcI3ViR6k5EGjbw 

url 的结尾没有任何  .jpg

但是我当我 按下 ctrl + S 保存图片的时候, 浏览器会自动识别出图片的名字是:
006AfEgvgy1gv4vigvqbqj61x32z64qq02.jpg

浏览器是如何识别出来的呢

问了一下chatpgt ,答案是: Content-Disposition 的响应头
完整的聊天记录是

其实这个问题,我首先问的是 kimi ai, 结果回答得很垃圾。

然后我检查了自己的响应头, 果然发现了这个文件名,就是下图中的 filename

2. 第二个经验,就是多琢磨。有时候即便是"瞎碰", 也需要多"碰"几次。

情况描述:

我在检查 img 标签的时候, 发现它提到的原始的尺寸是 4032 * 2525, 但是打开的图片,就是找不到原始的尺寸。

  1. kimi 说删掉 url 中的 s1600,我试了,不对。
  2. 我把 s1600/ 以及后面的全删掉,还是不对。
  3. 其他尝试,也不对。

最终的办法是; 把 s1600 换成 s0, 就获取到原始的图片尺寸了。

解决办法的来源

来源就是,多观察,多尝试。此页面提供了几百篇内容,我看看最老的,又看看最新的,发现它的内容,以及格式其实是有变化的。 前期都是 s0, 估计是后期 api 改版了,增加了 s1600, 为了降低服务器的压力。

3. 放一下图片。


相关推荐
zhougl99616 小时前
Java Spring Boot 爬虫技术全面介绍
java·spring boot·爬虫
Cory.眼17 小时前
Python爬虫实战:从入门到进阶
开发语言·爬虫·python
python布道者051617 小时前
【技术分享】从零构建YouTube评论爬虫:TKinter + Pandas + 反反爬全解析
爬虫·youtube
zhougl9961 天前
Java实现腾讯云开发者社区列表爬虫
java·爬虫·腾讯云
Experience-摆渡2 天前
Firecrawl深度调研报告:功能、实现原理、架构与自研落地建议
爬虫
深蓝电商API2 天前
Hook XMLHttpRequest 实战
爬虫·hook
quantdash_cc3 天前
告别自建 Requests/BS4 网页爬虫:基于 QuantDash 搭建零维保的高性能量化行情流水线
开发语言·爬虫·python·pandas·量化·quantdash
Patrick在香港3 天前
Python爬虫框架实战:优雅抓取香港政府公开API数据的通用方案
java·开发语言·爬虫·python·ai编程·数据可视化·可用性测试
鬼手点金4 天前
与LLM结合的主流智能爬虫框架
爬虫·python·llm·post·request·firecrawl·crawl4ai