爬虫-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数据输出

相关推荐
WHJ226几秒前
记录解决jupyter打开闪退
ide·python·jupyter
老歌老听老掉牙几秒前
1V1砂轮轮廓的几何建模与可视化分析
python·sympy·砂轮
浔川python社7 分钟前
浔川社团关于福利发放方案再次调整的征求意见稿公告
python
玄同76512 分钟前
Python 真零基础入门:从 “什么是编程” 到 LLM Prompt 模板生成
人工智能·python·语言模型·自然语言处理·llm·nlp·prompt
hakesashou28 分钟前
python 随机函数可以生成字符串吗
开发语言·python
FakeOccupational31 分钟前
【经济学】 基本面数据(Fundamental Data)之 美国劳动力报告&非农就业NFP + ADP + 美国劳动力参与率LFPR
开发语言·人工智能·python
weixin_4130632136 分钟前
测试《A Simple Algorithm for Fitting a Gaussian Function》拟合
python·算法
郝学胜-神的一滴1 小时前
机器学习数据集完全指南:从公开资源到Sklearn实战
人工智能·python·程序人生·机器学习·scikit-learn·sklearn
不要em0啦1 小时前
从0开始学python:简单的练习题3
开发语言·前端·python
不要em0啦1 小时前
从0开始学python:判断与循环语句
开发语言·python