当前位置: 首页 > news >正文

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. 注意检查响应头

情况描述:
对于这样一个  图片的 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. 放一下图片。

在这里插入图片描述
在这里插入图片描述

http://www.lryc.cn/news/416072.html

相关文章:

  • 本地安装Llama3.1与LobeChat可视化UI界面并实现远程访问大模型实战
  • MSF回弹木马在Ubuntu中测试
  • 大数据等保测评
  • CSS对元素的分类
  • 力扣第五十四题——螺旋矩阵
  • 中创算力:以知识产权转化运用促进高质量发展
  • C语言9~10 DAY(合集)
  • 【Kubernetes】应用的部署(一):金丝雀部署
  • 1.面试准备篇
  • Spring: try-catch 是否还会回滚
  • spdlog日志库--基础介绍
  • 【网络】网络编程套接字(二)
  • 1.1、centos stream 9安装Kubernetes v1.30集群 环境说明
  • Redis3
  • Oracle数据巡检 - 设计巡检模板
  • 优盘未格式化数据恢复实战指南
  • 【python基础】python基础习题练习(一)
  • GESP 4级样题 ---> 绝对素数
  • 大语言模型系列 - Transformer
  • Java面试之操作系统
  • springboot船舶维保管理系统--论文源码调试讲解
  • 【机器学习西瓜书学习笔记——神经网络】
  • 安装 electron 报错解决
  • 【Material-UI】Icon Button 组件详解
  • 51单片机-第七节-DS1302实时时钟
  • Java毕业设计 基于SSM和Vue的图书馆座位预约系统小程序
  • 【C++11】:lambda表达式function包装器
  • [io]进程间通信 -有名、无名管道 区别
  • pywinauto:Windows桌面应用自动化测试(七)
  • RGB++是什么;UTXO是什么;Nervos网络;CKB区块链;