【python笔记】requests模块基础总结

前言

菜某笔记总结,如有错误请指正。(抱歉可能我用渗透的靶场做的功能演示,让单纯想看爬虫整理的朋友不好理解,主要看一下requests库的写法吧,关于sql靶场,文件上传靶场什么的都当做网站的名字吧,下次我定改进v^v)

requests用途

主要是用于发送网络请求

Requests库的主要方法和属性

r=requests.get()

Response Request

对象 对象

r.cookies

#打印cookie

r.content

#常用于图像视频等

以上内容来自2_哔哩哔哩_bilibili

发送get请求

requests.get(url=,headers=,params=,proxies=)

  • url:请求url地址
  • headers:请求头
  • params:传递的参数
  • proxies:设置代理,需要设置http和https的字典

返回信息的打印

他会把返回的内容以字符串的形式表现出来

编码形式的转换

encoding是根据请求头里的情况判断编码类型

apparent_encoding是根据响应的内容进行判断编码的类型

因为请求头中有时候是没有写编码的类型的,这时候就会用默认的iso-8859-1

但是这个是不能编码汉语的,但是apparent的根据内容判断,会更准确。

所以当出现了编码错误的情况可以用这个方法改变编码

之后再r.text就可以了。一般常用'utf-8'编码。

状态判断

200代表成功,如果是其他的代表失败(当然不同状态码代表了不同含义)

传递参数

get型是有传参的,传参就需要用到params。

以下为我自己搭建的sql注入靶场(仅用来测试get传参)

标记处就是只有在传入参数的情况下才会显示的。

(证明我们的参数能够被传入,至于其他的统统无视,重点看代码get传参的写法)

令我没想到的是,第一次输入我写成我文件夹的位置了,结果他把我整个靶场的文件夹里里外外包括文件内容给我干出来了。。。。(嗯很强大)

定制请求头

这是原本get型数据包的样子

我们更改他的数据包就可以。。。。。。

于是这个数据包就变成了。。。。。。

嗯,干过网络渗透的都清楚这个有啥用*v*。

这个proxies是设置代理的意思,我这个用的burp抓包去抓这个数据包,一般是可以用一些模块去看发送的数据包,这里只是为了直观,结合我的burp展示。

发送post请求

与get请求差不多

语法:requests.post(url=,headers=,data=,proxies=)

data:发送的post数据

小案例

高级用法

session会话对象维持

用requests.Session方法可以实现发送的每个请求都是用的同一个cookie

代码写法:

post文件的上传

使用files参数

思路:用open的rb二进制模式打开文件,放到字典中。然后再把字典传入files的参数中。

先看用抓包软件抓取的数据包

先随便写个文件上传的数据包看一下files这个参数的对应数据包的位置吧

写出来的数据包是这个样子的

现在每个参数对应写到数据包参数中的位置都清楚了,那么我们开始吧~

上传位置为本地自己搭建的文件上传靶场(仅仅用来确认文件能够被上传)

写代码如下

写出来的post部分跟他需求一样的

可以看到上传了

文件下载

思路,就是把访问的内容写在文件中就是了

成功

啧,真俊。

获取网站cookie

相关推荐
小李不想当小白1 小时前
WDG看门狗(STM32标准库学习笔记)
笔记·stm32·单片机·嵌入式硬件·学习·嵌入式
木头左1 小时前
【Python】不点浏览器发博客:逆向 CSDN 创作中心接口做 md-publish 技能
python·自动化·api
欢欢李1 小时前
【LTE L3 笔记 04】LTE帧结构
笔记·无线通信·物理层·lte·空口协议
Tt有了t2 小时前
设计模式速查
java·python·设计模式
deepseek232 小时前
Python日志拖慢请求?QueueHandler排队、丢失与退出实测
python·性能优化·logging·后端开发·queuehandler
用户91294046848422 小时前
Codex 从零到能交付(05):第一次改代码:生成一个文件清单脚本
python
Dmz丶2 小时前
前端转 AI 100 天 Day 38:Token 管理与成本优化——别让 API 账单爆炸
python
用户298698530143 小时前
Python 自动化处理 Word 页眉页脚的几种典型场景
后端·python·api
終不似少年遊*3 小时前
【安全业务Agent】从场景到编排
python·react.js·ai·langchain·agent·安全架构·工作流
AKA__Zas4 小时前
接口自动化测试(1.0 初认识
python·ci/cd·学习方法