IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    咕咚数据提交算法分析实现微信运动刷步数

    堕络发表于 2017-05-10 02:28:34
    love 0

    小白人士直接关注公众号 landcbd 。

    以下可以忽略。。。。

    程序集名 保留 保留 备注
    gudong 公开
    变量名 类型 数组 备注
    access_token 文本型 登陆token
    steps 文本型 服务器步数
    qrticket 文本型 微信绑定连接

     

    子程序名 返回值类型 公开 备注
    子程序1

     

    子程序名 返回值类型 公开 备注
    初始化 当基于本类的对象被创建后,此方法会被自动调用

     

    子程序名 返回值类型 公开 备注
    销毁 当基于本类的对象被销毁前,此方法会被自动调用

     

    子程序名 返回值类型 公开 备注
    登录 文本型
    √
    access_token
    参数名 类型 参考 可空 数组 备注
    user 文本型
    √
    账号
    pwd 文本型
    √
    密码
    变量名 类型 静态 数组 备注
    url 文本型
    data 文本型
    Agent 文本型 CodoonSport(5.14.0 920;iOS 8.1.3;iPhone)
    retuen 文本型
    j 类json
    如果真 (user = “” 且 pwd = “”)
        user = “123”
        pwd = “123”
    如果真结束
    Agent = #Agent
    url = “http://api.codoon.com/token”
    data = “client_id=099cce28c05f6c39ad5e04e51ed60704&grant_type=password&password=” + pwd + “&redirect_uri=http%3A%2F%2F127.0.0.1&scope=user&username=” + user
    retuen = 访问POST网页模板代理cookies (url, data, , , , Agent)
    调试输出 (retuen)
    j.解析 (retuen)
    access_token = j.取通用属性 (“access_token”, 假)
    调试输出 (access_token)
    如果 (access_token = “”)
        access_token = j.取通用属性 (“error_description”, 假)
    否则
        信息框 (“登陆成功,初次使用请用微信扫描二维码”, 0, “新手说明”, )
    如果结束
    调试输出 (access_token)
    返回 (access_token)

     

    子程序名 返回值类型 公开 备注
    获取access_token 文本型
    √
    access_token 登陆成功有 否则空
    返回 (access_token)

     

    子程序名 返回值类型 公开 备注
    获取steps 文本型
    √
    steps 上传步数成功后 成功步数
    返回 (steps)

     

    子程序名 返回值类型 公开 备注
    上传 文本型
    √
    变量名 类型 静态 数组 备注
    url 文本型
    data 文本型
    Agent 文本型 CodoonSport(5.14.0 920;iOS 8.1.3;iPhone)
    retuen 文本型
    j 类_json
    ‘ access_token = ###char_color###“0c1aad7aa9b690dbd40944c48c0e30ae”###char_color_end###
    ‘ access_token = ###char_color###“545d44ae6f7ae003e93b69d62f7fd2bc”###char_color_end###
    Agent = #Bearer
    Agent = 子文本替换 (Agent, “######”, access_token, , , 真)
    url = “http://api.codoon.com/api/mobile_steps_upload_detail”
    data = #psto
    data = 子文本替换 (data, “2015-10-30”, 取今天 (), , , 真)
    retuen = 访问POST网页模板代理cookies (url, data, , , , Agent)
    调试输出 (retuen)
    j.解析 (retuen)
    steps = j.取属性 (“data”).取通用属性 (“steps”, 假)
    如果真 (steps = “”)
        steps = j.取通用属性 (“error_description”, 假)
        如果真 (steps = “Invalid Request.”)
            steps = “请求无效,请重新登陆”
        如果真结束
        如果真 (steps = “”)
            如果真 (j.取通用属性 (“description”, 假) = “para error”)
                steps = “上传频繁,稍后再试”
            如果真结束
        如果真结束
        如果真 (steps = “”)
            steps = “未知错误,请重新登陆”
        如果真结束
    如果真结束
    调试输出 (steps)
    返回 (steps)
    ‘ Content-Type: application/json
    ‘ Connection: keep-alive
    ‘ Proxy-Connection: keep-alive
    ‘ Accept: */*
    ‘ User-Agent: CodoonSport(5.14.0 920;iOS 8.1.3;iPhone)
    ‘ Accept-Language: zh-Hans;q=1
    ‘ Authorization: Bearer 0c1aad7aa9b690dbd40944c48c0e30ae
    ‘ Accept-Encoding: gzip, deflate
    ‘ ###char_color###“{“user_id”:”f117fab7-37d8-4335-8233-063bc9aa651b”,”access_token”:”0c1aad7aa9b690dbd40944c48c0e30ae”,”token_type”:”bearer”,”scope”:”user”,”expire_in”:93312000,”refresh_token”:”481b28a970fb701c4a44cfa133fd2935”}”###char_color_end###

     

    子程序名 返回值类型 公开 备注
    取今天 文本型
    √
    2015-10-30 时间取北京时间 联网失败返回空“”
    变量名 类型 静态 数组 备注
    时间 文本型 0
    时间2 文本型
    时间 = 分割文本 (到文本 (时间取北京时间 ()), “日”, )
    如果 (取数组成员数 (时间) = 2)
        时间2 = 时间 [1]
        时间2 = 子文本替换 (时间2, “年”, “-”, , , 真)
        时间2 = 子文本替换 (时间2, “月”, “-”, , , 真)
        返回 (时间2)
    否则
        返回 (“”)
    如果结束

     

    子程序名 返回值类型 公开 备注
    获取绑定连接 文本型
    √
    获取微信绑定连接
    变量名 类型 静态 数组 备注
    url 文本型
    data 文本型
    Agent 文本型 CodoonSport(5.14.0 920;iOS 8.1.3;iPhone)
    retuen 文本型
    j 类_json
    ‘ access_token = ###char_color###“545d44ae6f7ae003e93b69d62f7fd2bc”###char_color_end###
    Agent = #Bearer
    Agent = 子文本替换 (Agent, “######”, access_token, , , 真)
    url = “http://api.codoon.com/api/get_device_qrcode”
    data = “{}”
    retuen = 访问POST网页模板代理cookies (url, data, , , , Agent)
    调试输出 (retuen)
    j.解析 (retuen)
    qrticket = j.取属性 (“data”).取通用属性 (“qrticket”, 假)
    如果真 (qrticket = “”)
        qrticket = j.取通用属性 (“error_description”, 假)
    如果真结束
    调试输出 (qrticket)
    返回 (qrticket)

     

    子程序名 返回值类型 公开 备注
    获取二维码 文本型
    √
    返回绑定连接 可以http读文件 打开
    参数名 类型 参考 可空 数组 备注
    user_url 文本型
    √
    如果已经登录 自动添加 qrticket http://we.qq.com/d/AQCIc9a3YasxmAgQwHBhk8mUKo26Gt0vIIZneCZf
    如果真 (user_url = “”)
        user_url = qrticket
    如果真结束
    返回 (“http://qr.liantu.com/api.php?bg=f3f3f3&fg=ff0000&gc=222222&el=l&w=200&m=10&text=” + user_url)

     

    子程序名 返回值类型 公开 备注
    发送验证码 文本型
    √
    发送验证码返回信息
    参数名 类型 参考 可空 数组 备注
    手机 文本型
    是否电脑注册 逻辑型
    √
    变量名 类型 静态 数组 备注
    url 文本型
    data 文本型
    Agent 文本型 CodoonSport(5.14.0 920;iOS 8.1.3;iPhone)
    retuen 文本型
    j 类_json
    ‘ http://www.codoon.com/user/www_verify_mobile_request
    ‘ mobile=13244774793
    判断开始 (是否电脑注册)
        url = “http://www.codoon.com/user/www_verify_mobile_request”
        data = “mobile=” + 手机
    默认
        url = “http://api.codoon.com/check_external_bind”
        data = “source=addressbook&external_id=” + 手机
    判断结束
    retuen = 访问POST网页模板代理cookies (url, data, , , , Agent)
    调试输出 (retuen)
    j.解析 (retuen)
    判断开始 (是否电脑注册)
        retuen = j.取通用属性 (“description”, 假)
        判断开始 (retuen = “”)
            retuen = j.取通用属性 (“status”, 假)
            信息框 (retuen + “验证码已经发送到手机号:” + 手机, 0, “发送成功!!!”, )
        默认
        判断结束
    默认
        retuen = j.取属性 (“data”).取通用属性 (“has_bind”, 假)
        判断开始 (retuen = “-1”)
            retuen = j.取属性 (“data”).取通用属性 (“bind_user_nick”, 假)
            信息框 (“手机号已经注册[昵称]:” + qrticket, 0, “发送失败”, )
        判断 (retuen = “0”)
            信息框 (“验证码已经发送到手机号:” + 手机, 0, “发送成功!!!”, )
        默认
        判断结束
    判断结束
    ‘ false = 0  true = -1
    调试输出 (retuen)
    返回 (retuen)
    ‘ POST https://api.codoon.com/check_external_bind
    ‘ Host: api.codoon.com
    ‘ Content-Type: application/x-www-form-urlencoded
    ‘ Connection: keep-alive
    ‘ Proxy-Connection: keep-alive
    ‘ Accept: */*
    ‘ User-Agent: CodoonSport(5.14.0 920;iOS 8.1.3;iPhone)
    ‘ Accept-Language: zh-Hans;q=1
    ‘ Accept-Encoding: gzip, deflate
    ‘ Content-Length: 42
    ‘ ==========================================================
    ‘ http://api.codoon.com/check_external_bind
    ‘ external_id=13244774793&source=addressbook
    ‘ {“status”:”OK”,”data”:{“has_bind”:false},”description”:”“}
    ‘ {“status”:”OK”,”data”:{“has_bind”:true,”bind_user_id”:”f117fab7-37d8-4335-8233-063bc9aa651b”,”bind_user_gender”:”0”,”bind_user_nick”:”XD\u27b0”,”bind_user_portrait”:”http:\/\/wx.qlogo.cn\/mmopen\/v5WLwhibVlQOdObZatL42umc0W8FnicukklRO20YtgeCfe5EXavJmloNibvPWkpQJKv96l0JenuVqvHibbdM5CI9jbWcZsYuDB3s\/0”,”external_id”:”13244774793”},”description”:”“}

     

    子程序名 返回值类型 公开 备注
    确认注册 文本型
    √
    参数名 类型 参考 可空 数组 备注
    手机 文本型
    注册密码 文本型
    验证码 文本型
    是否电脑注册 逻辑型
    √
    变量名 类型 静态 数组 备注
    url 文本型
    data 文本型
    Agent 文本型 CodoonSport(5.14.0 920;iOS 8.1.3;iPhone)
    retuen 文本型
    j 类_json
    ‘ http://www.codoon.com/user/mobile_web_regist
    ‘ email:13244774793
    ‘ nick:色的共和国
    ‘ password:qwerty
    ‘ code:714628
    判断开始 (是否电脑注册)
        url = “http://www.codoon.com/user/mobile_web_regist”
        data = “password=” + 注册密码 + “&code=” + 验证码 + “&nick=” + 取随机字母 (8, 1) + “&email=” + 手机
    默认
        url = “http://api.codoon.com/verify_mobile_check”
        data = “code=” + 验证码 + “&mobile=” + 手机
    判断结束
    retuen = 访问POST网页模板代理_cookies (url, data, , , , Agent)
    调试输出 (retuen)
    j.解析 (retuen)
    判断开始 (是否电脑注册)
        retuen = j.取通用属性 (“info”, 假)
    默认
    判断结束
    调试输出 (retuen)
    返回 (retuen)
    ‘ POST https://api.codoon.com/verify_mobile_check
    ‘ Host: api.codoon.com
    ‘ Content-Type: application/x-www-form-urlencoded
    ‘ Connection: keep-alive
    ‘ Proxy-Connection: keep-alive
    ‘ Accept: /
    ‘ User-Agent: CodoonSport(5.14.0 920;iOS 8.1.3;iPhone)
    ‘ Accept-Language: zh-Hans;q=1
    ‘ Accept-Encoding: gzip, deflate
    ‘ Content-Length: 31
    ‘ code=1255555&mobile=13244774794

     

    i本程序使用的支持库列表
    spec (特殊功能支持库)


沪ICP备19023445号-2号
友情链接