编辑
2025-09-14
测试
00

测试基础汇总

测试的生命周期

需求分析:理解需求,对需求按模块分类。
测试计

编辑
2025-08-22
测试
00

Requests 库学习总结:

近期学习了 Python 的 Requests 库,在网页请求、信息处理及内容存储等方面有一定收获,现在从 Cookie 处理、Header 与 User - Agent、文件操作进行总结。

一、Cookie 相关操作

Cookie 是服务器传递给客户端的小文本文件,用于记录用户信息,在维持用户会话等场景中作用关键。

使用 requests.get 发送请求后,response.cookies 可获取 CookieJar 对象形式的 Cookie。若要更便捷地以键值对形式操作 Cookie,可借助 requests.utils 模块的方法转换:

python
import requests url = 'http://www.baidu.com' response = requests.get(url) # 获取 CookieJar 形式的 Cookie 并打印 print(response.cookies) # 将 CookieJar 转换为字典形式并打印 dict_cookies = requests.utils.dict_from_cookiejar(response.cookies) print(dict_cookies) # 将字典转换回 CookieJar 形式并打印 jar_cookies = requests.utils.cookiejar_from_dict(dict_cookies) print(jar_cookies)

当获取到字符串形式的 Cookie 时,也能将其转为字典以便操作。比如有字符串 temp 存储 Cookie 信息:

python
temp = "name=value; age=18; gender=male" cookie_list = temp.split(';') cookies = {cookie.split('=')[0].strip(): cookie.split('=')[-1] for cookie in cookie_list} print(cookies)

这里先按 ; 分割字符串得到 Cookie 列表,再通过字典推导式,按 = 分割每个 Cookie 项,生成键值对形式的字典。

二、Header 与 User - Agent

Header(请求头)包含请求的相关信息,User - Agent 是 Header 中的一个字段,它能让服务器识别客户端的操作系统及浏览器等信息。在请求中设置合适的 User - Agent,有助于模拟正常的浏览器请求,避免被服务器识别为异常请求而拒绝访问。例如:

python
import requests url = "https://example.com" headers = { "User - Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36" } response = requests.get(url, headers=headers)
编辑
2025-08-20
测试
00

我们可以从 CSRF Token 的本质、获取逻辑、自动化测试中的应用 三个维度总结核心知识点:

编辑
2025-08-15
前端
00

响应四要素解析

在客户端(如浏览器、requests 代码)向服务器发送请求后,服务器会返

编辑
2025-08-15
测试
00

requests库的使用方法:

在Python的网络请求领域,requests库以其简洁的API、强大的功能和人性化的设计,成为了开发者处理HTTP请求的首选工具。无论是简单的接口调用、复杂的会话维持,还是数据格式处理,requests都能轻松应对。本文将系统梳理requests库的核心用法,从高层便捷API到会话级请求,帮你快速掌握网络请求的精髓。

一、高层便捷API:快速上手的首选

requests库最常用的功能是封装了各类HTTP方法的高层API,这些方法无需手动指定请求类型,底层均通过requests.request()实现,适合快速完成简单请求。

1. 核心方法及作用

方法作用核心参数
requests.get()发送GET请求(用于获取资源)params(URL查询参数)、**kwargs(其他配置)
requests.post()发送POST请求(用于提交数据)data(表单数据)、json(JSON数据)、** kwargs
requests.put()发送PUT请求(用于更新资源)data(更新数据)、**kwargs
requests.delete()发送DELETE请求(用于删除资源)** kwargs
requests.head()发送HEAD请求(仅获取响应头)**kwargs
requests.options()发送OPTIONS请求(获取服务器支持的方法)** kwargs

2. 关键参数解析

  • **kwargs:灵活接收任意关键字参数(如headerscookiestimeout等),是requests灵活性的核心。
    例如:requests.get(url, headers={"User-Agent": "Chrome"}, timeout=10)