实验吧编程题:百米

第一次用python写关于表单自动提交的程序,不是特别简练

题目是这样的:

经过观察,只有数字是变动的,运算符是不变的,这就容易很多了

思路:

  1. 抓取网页内容
  2. 通过正则表达式提取数字内容
  3. 通过特定的算术表达式计算出结果
  4. 提交表单
  5. 返回网页内容

python程序:

 1 #-coding:utf-8-*-
 2 import requests
 3 import re
 4 url = "http://ctf5.shiyanbar.com/jia/"
 5 session = requests.Session()
 6 res1 = session.get(url)
 7 zhengze = r"'my_expr'>(.*)</div>"    
 8 res2 = re.findall(zhengze,res1.content)[0]    #查找与正则表达式匹配的内容
 9 list = re.sub('[()+x-]','',res2).split()    #将符号替换为空,之后将空格删除并放入列表
10 res3 = (int(list[0])+int(list[1]))*(int(list[2])-int(list[3]))-(int(list[4])+int(list[5])-int(list[6]))*int(list[7])    
11 payload = {'pass_key':res3}
12 res4 = session.post(url+'index.php?action=check_pass',payload)
13 print res4.content

 

本文固定链接:http://www.cnblogs.com/hell0w/p/7624851.html  转载请注明出处,谢谢!

posted @ 2017-10-03 23:59  hell0_w  阅读(1262)  评论(0编辑  收藏  举报