热爱技术
专注分享

友情分析某刷步网站,开启微信永久自动云刷步模式

最近偶然间发现了某个刷步网站,可以实现在线给微信刷步。http://vwshuabu.com/

这个网站可以实现网页刷步,不需要手机任何设置,把号挂在网页就可以实现云刷步了,感觉挺神奇的。抱着研究的态度,花了3块钱研究了下这个网站,找到了刷步的接口(相当弱)。这篇文章,就来讲一讲怎么找到这个接口,以及如何自己写程序,开启自动化云刷步。

一 分析刷步的接口

首先进入这个网站,选上方的 ‘网页刷步’,先花三块钱去买一个体验卡。

file

然后他会给你一个登录地址,和一个卡号:

file

我们去给的地址,选小秘书,然后输入你的卡密来激活。

file

激活完了点开始,来扫码登录你的微信:

file

完了会进入主菜单,在下面可以看到一个微信步数设置,还有一个自动化步数:

file

它这个自动化设置步数用起来有点问题,而且只支持设置最长一周,有点鸡肋。这里我们用直接设置步数的模式,写个程序来‘智能化’设置步数,让它看起来更加合理。

在这个页面,我们打开F12,切到network标签,直接设置一个比当前步数大的数字,来看下执行结果。

file

file

file

可以看到这是一个post的请求,post的数据只有「code」和「num」两个参数,分别对应的是你买的卡号和要设置的步数。这里要强调的是,这个网站似乎没对卡密做过期时间的核对,仅仅是卡密过期了不让你打开网页而已,对于http请求没有任何影响。

这就非常棒了,我们用python写一个程序,然后让程序每天定时发送请求,模拟正常的步数即可。

二 整理接口

1: 请求登录二维码接口:https://nb.fx7899.com/fetchimage?img=你的卡号

2: 设置步数接口: https://nb.fx7899.com/setRun/ 参数为卡号和步数

三 分析逻辑

这个程序其实相当简单,只要定时用requests来post一下你的步数就行了。为了让步数看起来更加科学,我们就需要使用随机步数+分段时间了。

这里我的方法是这样的:一天的时间从早上7点开始,到晚上22:40结束,把时间分为早,中,晚三段。每天随机一个10000-25000的数字作为步数,早上固定xx步-xx步,中午和晚上的步数占一个随机的百分比,最后,所有步数加起来等于总步数。然后在时间段内,每隔10分钟加一次步数,让步数做到缓慢增长。

最后在做一个定时任务,每天重复执行一次即可。

代码实现

设置步数:

import requests
import schedule

def add_step(step:int):
    url = 'https://nb.fx7899.com/setRun'
    header = {
        'accept': 'application/json, text/javascript, */*; q=0.01',
        'accept-language': 'zh-CN,zh;q=0.9',
        'content-type': 'application/x-www-form-urlencoded; charset=UTF-8',
        'origin': 'https://nb.fx7899.com',
        'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36',
        'x-requested-with': 'XMLHttpRequest'
    }
    data = {
        'code': '',
        'num': step
    }
    r = requests.post(url,data=data,headers=header)
    success = r.json().get('status')
    tip = r.json().get('message')
    return success,tip

随机生成各个时间段的步数

def get_schedule():
    all_step = random.randint(10000,25000)
    wake_up_step = random.randint(1000,1500)
    morning = random.randint(300,400)/10
    afternoon = random.randint(350,450)/10
    night = random.randint(150,350)/10
    rest_step = all_step - wake_up_step
    morning_step = rest_step*morning/100
    afternoon_step = rest_step*afternoon/100
    night_step = rest_step*night/100
    return wake_up_step,morning_step,afternoon_step,night_step,all_step

判断当前的时间段

def get_now_duration():
    now = datetime.now()
    t = int(now.strftime('%H%M'))
    if t in range(700,731):
        return 1,t
    elif t in range(830,1231):
        return 2,t
    elif t in range(1400,1731):
        return 3,t
    elif t in range(1900,2230):
        return 4,t
    else:
        return 0,t

执行刷步

def main_handle():
    wake_up_step,morning_step,afternoon_step,night_step,schedule_step = get_daily_schedule()
    all_step = 0
    while True:
        duration,now = get_now_duration()
        if now > 2330:
            return
        if duration == 1:
            all_step += int(wake_up_step/3)
        elif duration == 2:
            all_step += int(morning_step/24)
        elif duration == 3:
            all_step += int(afternoon_step/21)
        elif duration == 4:
            all_step += int(night_step/21)
        else:
            continue
        add_step(all_step)
        sleep(599)

最后用一个定时任务库来每天开启一次

if __name__ == '__main__':
    schedule.every().day.at('00:01').do(main_handle)
    while True:
        schedule.run_pending()
        sleep(59)

四 后续

这个接口没有对卡号过期时间进行验证,所以我们只要买一张体验卡,就可以无限使用了。如果你想用其他的功能,同样的道理,F12,点击那个功能后,分析下请求地址,请求参数,用python或者postman直接构造请求就可以了。

在刷步期间请不要登录电脑或者ipad端的微信,这样会导致刷步掉线。如果你不慎顶号了,请看本文第二步中,那个微信登录二维码请求地址,直接在浏览器打开扫码登录即可。

这个东西也是无意间发现的,能用多久也不知道,就当娱乐了吧~

赞(6) 打赏
未经允许不得转载:小伟博客 » 友情分析某刷步网站,开启微信永久自动云刷步模式

评论 3

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #1

    真好

    Never5年前 (2019-07-16)回复
  2. #2

    INFO: loading config from /etc/shadowsocks.json
    shadowsocks 2.1.0
    2019-07-29 16:01:36 INFO starting server at 107.150.117.214:25
    Traceback (most recent call last):
    File “/usr/bin/ssserver”, line 9, in
    load_entry_point(‘shadowsocks==2.1.0’, ‘console_scripts’, ‘ssserver’)()
    File “/usr/lib/python2.7/dist-packages/shadowsocks/server.py”, line 66, in main
    tcp_servers.append(tcprelay.TCPRelay(a_config, dns_resolver, False))
    File “/usr/lib/python2.7/dist-packages/shadowsocks/tcprelay.py”, line 519, in __init__
    server_socket.bind(sa)
    File “/usr/lib/python2.7/socket.py”, line 224, in meth
    return getattr(self._sock,name)(*args)
    socket.error: [Errno 99] Cannot assign requested addres
    出现这种问题,麻烦了

    yangstarone5年前 (2019-07-29)回复
    • 这个好像不是这篇文章的问题吧

      misery5年前 (2019-09-29)回复

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏