RapidTyping

解题思路

在这里插入图片描述有了第一道题目的经验,但是我还是傻傻的点击了一下,提交查询内容,结果很明了
接下来我们就要对题目进行一个分析。
解题过程:分析网页—爬取—计算—提交

  • 分析界面 F12(其实我更喜欢谷歌浏览器)
    这个图片的信息可以看出是一堆字母还有数字组成的,有明显的base 64的编码说明。
    在这里插入图片描述
  • 接下来,先将网页的内容爬去下来,好久没有写过爬虫代码了,之前都是用的java,后来体会到了Python的强大,所以接下来我要尝试一下Python爬取
#-*-encoding:utf-8-*-
__author__ = 'ZhangHe'
#爬取网页内容

import requests as req
from bs4 import BeautifulSoup


#获取静态界面
url = 'http://123.207.149.64:23331/captcha/'
r = session.get('http://123.207.149.64:23331/captcha/')
page = req.get(r.text)
html = page.text
bf = BeautifulSoup(html,"lxml")
texts = bf.find('img').get('src').split(',')[1]
print(texts);
  • 解码获得html标签
dbf = BeautifulSoup(decode,"lxml")
text = dbf.find_all('text')

for txt in text:
    print(txt);

在这里插入图片描述

  • 对X坐标进行排序并且拼接字符串(第一次尝试的时候是自由拼接,没有成功)
answer = ''
str = sorted(text1, key=lambda x: float(x.get('x')),reverse=False)
for i in str:
    answer += i.string
r = session.post('http://123.207.149.64:23331/captcha/', params={'code': answer})
print(r.text)
  • 这个题目似乎跟网速也有关系,我执行了好几次才成功
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值