#encoding=utf-8
import requests
import re

session = requests.Session()
url = 'http://ctf4.shiyanbar.com/ppc/acsii.php'
req = session.get(url)
zz = r'red">(.*?)</div>'
n = re.findall(zz,req.content)[0]
n = str(n) 

上面是通过正则获取指定内容,就是图片中的第一行


n = n.replace('这里写你找到的图形的HTML代码','这里是写图形对应的数字')

例如,这里我找到一个图形的html代码,它对应的数字是 5,

n = n.replace('xxxxx<br />x&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;xxxx<br />&nbsp;&nbsp;&nbsp;&nbsp;x<br />xxxxx<br />','5') 

Python replace() 方法把字符串中的 old(旧字符串) 替换成 new(新字符串)

然后得到图片中的第二行


n = n.replace('<br/>','')  #这里的作用是将第二行中多余的<br/>去掉,得到第三行

接下来就是提交了

post = session.post(url,{'inputNumber':n,'submit':'提交'})
print post.content,n#获取响应 flag 就在这里了 
西普CTF-ASCII艺术-以夕阳落款

如果可以获取响应,但不出flag,那就多试几次吧,再不行就检查一下replace() 方法是否正确。

完整代码:

#encoding=utf-8
import requests
import re

session = requests.Session()
url = 'http://ctf5.shiyanbar.com/ppc/acsii.php'
req = session.get(url)
zz = r'red">(.*?)</div>'
n = re.findall(zz,req.content)[0]
n = str(n) 

n = n.replace('&nbsp;xxx&nbsp;<br />x&nbsp;&nbsp;&nbsp;x<br />x&nbsp;&nbsp;&nbsp;x<br />x&nbsp;&nbsp;&nbsp;x<br />&nbsp;xxx&nbsp;<br />','0')
n = n.replace('&nbsp;xx<br />&nbsp;&nbsp;x&nbsp;x&nbsp;&nbsp;<br />&nbsp;&nbsp;x&nbsp;&nbsp;<br />&nbsp;&nbsp;x&nbsp;&nbsp;<br />xxxxx<br />','1')
n = n.replace('&nbsp;xx<br>&nbsp;&nbsp;x&nbsp;x&nbsp;&nbsp;<br>&nbsp;&nbsp;x&nbsp;&nbsp;<br>&nbsp;&nbsp;x&nbsp;&nbsp;<br>xxxxx<br><br/>','1')
n = n.replace('&nbsp;xxx&nbsp;<br />x&nbsp;&nbsp;&nbsp;x&nbsp;<br />&nbsp;&nbsp;xx&nbsp;<br />&nbsp;x&nbsp;&nbsp;&nbsp;<br />xxxxx<br />','2')
n = n.replace('&nbsp;xxx&nbsp;<br />x&nbsp;&nbsp;&nbsp;x<br />&nbsp;&nbsp;xx&nbsp;<br />x&nbsp;&nbsp;&nbsp;x<br />&nbsp;xxx&nbsp;<br />','8')
n = n.replace('xxxxx<br />x&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;xxxx<br />&nbsp;&nbsp;&nbsp;&nbsp;x<br />xxxxx<br />','5')
n = n.replace('&nbsp;x&nbsp;&nbsp;&nbsp;x<br />x&nbsp;&nbsp;&nbsp;&nbsp;x<br />&nbsp;xxxxx<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x<br />&nbsp;&nbsp;&nbsp;&nbsp;x<br />','4')
n = n.replace('xxxxx<br />x&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;xxxx<br />&nbsp;&nbsp;&nbsp;&nbsp;x<br />xxxxx<br />','5') 

n = n.replace('<br/>','')

print n

post = session.post(url,{'inputNumber':n,'submit':'提交'})
print post.content,n

Flag:

温馨提示: 此处内容需要评论本文后刷新才能查看,支付2元即可直接查看所有Flag。

小广告:关于获取西普实验吧所有Writeup请点击这里查看索引

查看所有Flag需要付费,需要获取所有Flag的童鞋请访问这里成为付费用户,可以自助把自己的注册邮箱加入网站白名单,即可免回复看到本站所有Flag

Flag大全地址:所有Flag

PS:本站不是实验吧的官方站点,纯粹是个人博客,收取Flag费用仅是维持服务器费用,做站不易,且行窃珍惜,如果喜欢我的博客,愿意捐赠的,可以扫描下面的二维码

微信二维码:
支付宝二维码: