爬虫-request处理get

1.概念

GET 请求是 HTTP 协议中最基础、最常用的请求方法 ,用于向服务器请求(获取)资源 (如网页、图片、API 数据等)。它的核心特点是:只获取数据,不修改服务器状态(即"只读"操作)。

复制代码
/search?q=HTTP+GET&lang=zh-CN HTTP/1.1

GET 请求的核心特性

特性 说明
安全 不应修改服务器数据(仅查询)。多次执行结果相同(幂等)。
数据暴露位置 参数通过 URL 传递 (拼接在 ? 后,如 ?name=John&age=30)。
可被缓存 浏览器/代理服务器可缓存响应结果,提升重复访问速度。
有长度限制 URL 长度受浏览器限制(通常 2KB~8KB),不适合传输大量数据。
可被书签收藏 参数在 URL 中,保存链接即保存查询状态。
历史记录可见 URL 会出现在浏览器历史记录中。

2.编码测试

没加请求头:

直接跳到禁止访问

加了请求头:

可以用这个查看请求头信息

python 复制代码
print(resp.request.headers)#可以查看到请求头信息

有些网站对设备进行检测,检测到不是正常浏览器,就不给你数据,所以要加上请求头。

3.f12字段

核心请求头字段

字段名 作用 示例值
Host 目标服务器的域名和端口 www.example.com:443
User-Agent 客户端(浏览器/操作系统)标识 Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36
Accept 客户端支持的响应内容类型(MIME 类型) text/html, application/xhtml+xml, application/xml;q=0.9, */*;q=0.8
Accept-Language 客户端优先语言 en-US, en;q=0.9, zh-CN;q=0.8, zh;q=0.7
Accept-Encoding 客户端支持的压缩算法 gzip, deflate, br
Connection 控制连接是否保持活跃 keep-alive(复用连接)或 close(关闭连接)
Referer 当前请求的来源页面 URL(用于防盗链/流量分析) https://www.google.com/
Cookie 客户端存储的会话信息(由服务器通过 Set-Cookie 设置) sessionId=abc123; theme=dark
Content-Type 请求体的格式(仅 POST/PUT 等含 Body 的请求) application/json application/x-www-form-urlencoded
Content-Length 请求体的大小(字节) 348
Authorization 身份凭证(如 Token/Basic 认证) Bearer eyJhbGciOi... Basic dXNlcjpwYXNz

高级/功能性请求头

字段名 作用 示例值
Cache-Control 控制缓存行为 no-cache(不直接使用缓存) max-age=3600(缓存有效期)
If-Modified-Since 条件请求:资源在指定时间后修改才返回 Tue, 15 Aug 2023 12:00:00 GMT
If-None-Match 条件请求:资源 ETag 不匹配才返回 "d5c-5b3a8e0a0f6c0"
Origin 跨域请求的来源(由浏览器自动添加) https://www.site-a.com
Sec-Fetch-* 安全元数据(浏览器自动添加) (防 CSRF/恶意请求) Sec-Fetch-Site: cross-site Sec-Fetch-Mode: cors
Upgrade-Insecure-Requests 请求将 HTTP 升级为 HTTPS 1(启用升级)
X-Requested-With 标识 AJAX 请求(非标准) XMLHttpRequest

3.多参数处理

最下面post是form data get请求是 queryString Paramefers

先写一个框架

复制下面一堆

转化成字典格式

加到params里面,相当于用参数的方式拼到url里面,但是post不会,隐藏起来了

当然也要记得用json数据输出

相关推荐
presenttttt7 分钟前
用Python和OpenCV从零搭建一个完整的双目视觉系统(四)
开发语言·python·opencv·计算机视觉
木头左3 小时前
逻辑回归的Python实现与优化
python·算法·逻辑回归
quant_19864 小时前
R语言如何接入实时行情接口
开发语言·经验分享·笔记·python·websocket·金融·r语言
失败又激情的man8 小时前
python之requests库解析
开发语言·爬虫·python
爬虫程序猿9 小时前
利用爬虫按关键字搜索淘宝商品实战指南
android·爬虫
打酱油的;9 小时前
爬虫-数据解析
爬虫
用什么都重名11 小时前
MinerU:高效智能PDF文档解析工具完全指南
人工智能·python·pdf·mineru·makedown
倔强青铜三11 小时前
苦练Python第4天:Python变量与数据类型入门
前端·后端·python
这我可不懂11 小时前
Python 项目快速部署到 Linux 服务器基础教程
linux·服务器·python