我们看一下原题:
第2题:快速口算
小明要参加一个高技能比赛,要求每个人都要能够快速口算四则运算,2秒钟之内就能够得到结果,但是小明就是一个小学生没有经过特殊的培训,那小明能否通过快速口算测验呢?
题目给的算式在两名秒中之内会不断的刷新,所以这里我们需要用python写脚本,以post的方式发送计算结果。废话不多说直接上脚本。
一、打开虚拟机,打开python。
二、脚本编写
脚本分析
!/usr/bin/python
#coding=utf-8
import requests
url='http://lab1.xseclab.com/xss2_0d557e6d2a4ac08b749b61473a075be1/index.php' 注意url后面要加单引号或者是双引号
r1=requests.session()
s=r1.get(url)
r2=s.text.split("<br/>")[1].split("<input")[0].split(" ")[1].split("=")[0]
r3=eval(r2) eval函数用于计算
r4=r1.post(url,data={'id':r3})
print(r4.text)
session的作用就是让脚本带着cookie值,以便于用户访问页面的时候进行身份验证。将requests中的session类实例化为一个对象。以便于在请求头中自动加上session id。如果我们不用session类,跟用此类的方式不太一样。如果不用的话,我们的代码如下r1=request.get(url=’’)注意url要用单引号。
但是回显的信息以乱码的形式出来。