glidedsky挑战-CSS反爬

探讨CSS谜题页面的特性,分析数字显示规则,提出算法实现思路,解决数字顺序及干扰数字问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

相应页面(http://glidedsky.com/level/crawler-css-puzzle-1):

题目要求:

 

再看看页面:

 

分析这个页面的特点:

  1. 页面显示出来的数据不同
  2. 页面中部分显示的数据可能在标签中不显示
  3. 页面中出现数字顺序是乱的,不好组合拼接,如第3个字符(346对应634)
  4. 页面中,有些字符还出现其它的数字来扰乱数字。

 

然后我们再分析页面。

 

 

是不是这些数据似曾相识,没错了,这些CSS 就是页面数字显示出来的规则。没办法了,那就分析、研究呗。

 

说说我总结出来的几点吧:

  • css中 有 content的,标签中必定没有数字。如:.FF0wIJ:before { content:"293" }
  • css中 有 { left:-1em },是数字顺序,其中部分数据可能没有这个属性,那它就是 0em。如:.CP5WRpgT { left:-1em }
  • css中 有{ opacity:0 },那么这个数字是无效的,只是用来干扰。如:.qx11BjWx { opacity:0 }

 

那么知道规则了,那就写算法实现它吧。

应于网站要求,这里只说思路,不提供代码。

1、获取页面,解析出标签和css样式,保存下来。

2、根据规则,写算法实现。

3、记录数字,进行求和。

4、获取下一面数据,再重复第一步。

 

这里第2步比较难,因为它的规则不一,需要作出各种判断。

提示一下,难点在于数字顺序,可以通过定个数字下标来记录,设一处定点值,当它产生一个,加入到队列,定点值就加1。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值