python requests模块

python requests模块
以 字符?正则?为例
启动python输入import requests (导入模块)
r1=requests.get(url='http://http://123.206.87.240:8002/web10/')(设置目标网址)

r1(测试请求)

当返回200时成功

r1.text输出内容(此图是已经传过id的所以会看到key)

print(r1.text) 排好了的

查看headers
而后r1.headers

然后可用for循环 把这些排列好输出

输出键:

for key in r1.headers: print(key) 

输出键与值:

for key in r1.headers: print(key,r1.headers[key]) 

查看指定键:r1.headers['xx']

题目要我们传的id是需要符合后面这个格式的”/key.key.{4,7}key:\/.\/(.key)[a-z*[[:punct:]]/i” [:punct:]为任意一个特殊字符由源码可构造‘/keykeyaaaakey:/a/akeys:’

下面是两种请求的写法

get请求

r1=requests.get(url='http://123.206.87.240:8002/web10/',params={'id':'/keykeyaaaakey:/a/akeys:'})

post请求

r2=requests.post(url='http://xxxxxxxxxxxx/',data={'id':'/keykeyaaaakey:/a/akeys:'})

像这种上传参数的还是直接通过浏览器方便

例题:天下武功唯快不破

使用python的request模块 先导入 import requests

r1=requests.get(url='http://ctf5.shiyanbar.com/web/10/10.php')
查看报头 r1.headers
看到FLAG 其中是base64编码

所以导入base64模块转化

因为需要post的是:后面的 所以将字符串进行分离 split(“分界线”)[第几个从0开始]

因为他每次需要我们传的flag每一秒都是会变的,要做到这样是需要编写脚本的

所以现在在开始编写脚本

图中#!/usr/bin/env python指明python脚本解释器的路径 使用了env的原因 是python可能不是安装在默认路径

图中#coding:utf-8python脚本文件解释器 脚本的字符集


执行

相关推荐

发表评论

路人甲

网友评论(0)