VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 编程开发 > python入门教程 >
  • python修改微信和支付宝步数

项目意义

如果你想在支付宝蚂蚁森林收集很多能量种树,为环境绿化出一份力量,又或者是想每天称霸微信运动排行榜装逼,却不想出门走路,那么该python脚本可以帮你实现。

实现方法

手机安装第三方软件乐心健康,注册账号登录,将运动数据同步到微信和支付宝。用python脚本远程修改乐心健康当前登录账号的步数即可。

第一步:在手机上安装乐心健康app。

图片


安卓版下载地址:乐心健康安卓版
苹果版下载地址:乐心健康iOS版

第二步:注册账号登录,并设置登录密码。

图片


第三步:完成第三方同步,将运动数据同步到微信和支付宝。

图片


第四步:运行python脚本,修改乐心健康步数。

图片

 

图片

 

图片

python代码

程序设定是每天7点自动修改步数,在下面脚本对应的位置替换填入乐心健康账号、乐心健康密码、修改步数,然后运行程序。修改步数推荐设置范围是30000至90000,步数值太大会导致修改不成功。如果想改变第二天自动修改步数的时间,请修改图示位置的25200,+25200代表第二天0点后加上的秒数,也就是7x60x60,即7小时,根据自己的需要修改即可。如果每天都要修改步数,那么让程序一直保持运行即可。
注意:运行程序会立刻修改当天的步数,自动修改步数是从程序保持运行的第二天开始。

图片

图片


change_step.py

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# -*- coding: utf-8 -*-
import requests
import json
import hashlib
import time
import datetime
 
 
class LexinSport:
    def __init__(self, username, password, step):
        self.username = username
        self.password = password
        self.step = step
 
    # 登录
    def login(self):
        url = 'https://sports.lifesense.com/sessions_service/login?systemType=2&version=4.6.7'
        data = {'loginName'self.username, 'password': hashlib.md5(self.password.encode('utf8')).hexdigest(),
                'clientId''49a41c9727ee49dda3b190dc907850cc''roleType'0'appType'6}
        headers = {
            'Content-Type''application/json; charset=utf-8',
            'User-Agent''Dalvik/2.1.0 (Linux; U; Android 7.1.2; LIO-AN00 Build/LIO-AN00)'
        }
        response_result = requests.post(url, data=json.dumps(data), headers=headers)
        status_code = response_result.status_code
        response_text = response_result.text
        # print('登录状态码:%s' % status_code)
        # print('登录返回数据:%s' % response_text)
        if status_code == 200:
            response_text = json.loads(response_text)
            user_id = response_text['data']['userId']
            access_token = response_text['data']['accessToken']
            return user_id, access_token
        else:
            return '登录失败'
 
    # 修改步数
    def change_step(self):
        # 登录结果
        login_result = self.login()
        if login_result == '登录失败':
            return '登录失败'
        else:
            url = 'https://sports.lifesense.com/sport_service/sport/sport/uploadMobileStepV2?systemType=2&version=4.6.7'
            data = {'list': [{'DataSource'2'active'1'calories'int(self.step/4), 'dataSource'2,
                              'deviceId''M_NULL''distance'int(self.step/3), 'exerciseTime'0'isUpload'0,
                              'measurementTime': time.strftime('%Y-%m-%d %H:%M:%S'), 'priority'0'step'self.step,
                              'type'2'updated'int(round(time.time() * 1000)), 'userId': login_result[0]}]}
            headers = {
                'Content-Type''application/json; charset=utf-8',
                'Cookie''accessToken=%s' % login_result[1]
            }
            response_result = requests.post(url, data=json.dumps(data), headers=headers)
            status_code = response_result.status_code
            # response_text = response_result.text
            # print('修改步数状态码:%s' % status_code)
            # print('修改步数返回数据:%s' % response_text)
            if status_code == 200:
                return '修改步数为【%s】成功' % self.step
            else:
                return '修改步数失败'
 
 
# 睡眠到第二天执行修改步数的时间
def get_sleep_time():
    # 第二天日期
    tomorrow = datetime.date.today() + datetime.timedelta(days=1)
    # 第二天7点时间戳
    tomorrow_run_time = int(time.mktime(time.strptime(str(tomorrow), '%Y-%m-%d'))) + 25200
    # print(tomorrow_run_time)
    # 当前时间戳
    current_time = int(time.time())
    # print(current_time)
    return tomorrow_run_time - current_time
 
 
if __name__ == "__main__":
    # 最大运行出错次数
    fail_num = 3
    while 1:
        while fail_num > 0:
            try:
                # 修改步数结果
                result = LexinSport('乐心健康账号''乐心健康密码', 修改步数).change_step()
                print(result)
                break
            except Exception as e:
                print('运行出错,原因:%s' % e)
                fail_num -= 1
                if fail_num == 0:
                    print('修改步数失败')
        # 重置运行出错次数
        fail_num = 3
        # 获取睡眠时间
        sleep_time = get_sleep_time()
        time.sleep(sleep_time)

  

出  处:https://www.cnblogs.com/python-kele/p/14628000.html

 
 

相关教程