跳转至内容
0
  • 版块
  • 讨论
  • 最新
  • 标签
  • 热门
  • 顶端
  • 用户
  • 版块
  • 讨论
  • 最新
  • 标签
  • 热门
  • 顶端
  • 用户
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(Zephyr)
  • 不使用皮肤
折叠
JIKE社区
  1. 首页
  2. 讨论区
  3. 技术专区
  4. 天翼云盘GitHub自动签到源代码失效了,哪位大神改改?

天翼云盘GitHub自动签到源代码失效了,哪位大神改改?

已定时 已固定 已锁定 已移动 技术专区
31 帖子 10 发布者 4.8k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • Z zeze

    只有签到功能,能用就行

    Y 离线
    Y 离线
    yafengliang
    🍌
    写于 最后由 编辑
    #9

    @zeze 在GitHub上还能正常用么?我的报下标越界

    1 条回复 最后回复
    0
    • Z zeze

      只有签到功能,能用就行

      Y 离线
      Y 离线
      yafengliang
      🍌
      写于 最后由 编辑
      #10

      @zeze 签到账号1
      Traceback (most recent call last):
      File "C189Checkin.py", line 154, in <module>
      main()
      File "C189Checkin.py", line 15, in main
      msg = login(username, password)
      File "C189Checkin.py", line 118, in login
      captchaToken = re.findall(r"captchaToken' value='(.+?)'", r.text)[0]
      IndexError: list index out of range
      Error: Process completed with exit code 1.

      1 条回复 最后回复
      0
      • W wushuiyin

        前段时间的几个bug 撸了几个t 撸了近9年的会员 估计后面还会有bug

        Y 离线
        Y 离线
        yafengliang
        🍌
        写于 最后由 编辑
        #11

        @wushuiyin 卧槽,这好事怎么不分享经验,不厚道哟

        1 条回复 最后回复
        0
        • Z zeze

          只有签到功能,能用就行

          Y 离线
          Y 离线
          yafengliang
          🍌
          写于 最后由 编辑
          #12

          @zeze
          Pycharm确实可以跑

          登录成功
          已经签到过了,签到获得4M空间
          抽奖获得天翼云盘50M空间
          抽奖获得天翼云盘50M空间
          
          1 条回复 最后回复
          0
          • Y 离线
            Y 离线
            yafengliang
            🍌
            写于 最后由 编辑
            #13

            找了下区别,确实是登录的url更换了https://cloud.189.cn/api/portal/loginUrl.action?redirectURL=https://cloud.189.cn/web/redirect.html

            Y 1 条回复 最后回复
            1
            • Y 离线
              Y 离线
              yafengliang
              🍌
              写于 最后由 编辑
              #14
              此主題已被删除!
              1 条回复 最后回复
              0
              • Y yafengliang

                找了下区别,确实是登录的url更换了https://cloud.189.cn/api/portal/loginUrl.action?redirectURL=https://cloud.189.cn/web/redirect.html

                Y 离线
                Y 离线
                yafengliang
                🍌
                写于 最后由 编辑
                #15

                @yafengliang

                
                小钉
                11:54
                2021-09-07 03:54:36 Tuesday
                账号:178****9198
                密码:登录成功
                签到获得51M空间
                抽奖次数不足
                抽奖次数不足
                账号:173****2113
                密码:登录成功
                签到获得4M空间
                抽奖次数不足
                抽奖次数不足
                
                1 条回复 最后回复
                0
                • L 离线
                  L 离线
                  LMY
                  写于 最后由 编辑
                  #16

                  这个单独写成.py能在本地跑吗?

                  Y 1 条回复 最后回复
                  0
                  • L 离线
                    L 离线
                    LMY
                    写于 最后由 编辑
                    #17

                    大佬们
                    这种怎么办呀?
                    获得1,获得1是个什么鬼?

                    Y 1 条回复 最后回复
                    0
                    • Z 离线
                      Z 离线
                      zeze
                      🍌
                      写于 最后由 编辑
                      #18

                      凑合这用就行了……

                      1 条回复 最后回复
                      0
                      • 赵 离线
                        赵 离线
                        赵信
                        🍌
                        写于 最后由 编辑
                        #19

                        大佬好强

                        1 条回复 最后回复
                        0
                        • L LMY

                          这个单独写成.py能在本地跑吗?

                          Y 离线
                          Y 离线
                          yafengliang
                          🍌
                          写于 最后由 编辑
                          #20

                          @lmy 可以的

                          import requests, time, re, rsa, json, base64
                          from urllib import parse
                          
                          s = requests.Session()
                          
                          username = "账号"
                          password = "密码"
                          
                          if(username == "" or password == ""):
                              username = input("账号:")
                              print(username[:3] + '****' + username[7:])
                              password = input("密码:")
                          
                          def main():
                              msg = login(username, password)
                              if(msg == "error"):
                                  return None
                              else:
                                  pass
                              rand = str(round(time.time()*1000))
                              surl = f'https://api.cloud.189.cn/mkt/userSign.action?rand={rand}&clientType=TELEANDROID&version=8.6.3&model=SM-G930K'
                              url = f'https://m.cloud.189.cn/v2/drawPrizeMarketDetails.action?taskId=TASK_SIGNIN&activityId=ACT_SIGNIN'
                              url2 = f'https://m.cloud.189.cn/v2/drawPrizeMarketDetails.action?taskId=TASK_SIGNIN_PHOTOS&activityId=ACT_SIGNIN'
                              headers = {
                                  'User-Agent':'Mozilla/5.0 (Linux; Android 5.1.1; SM-G930K Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.136 Mobile Safari/537.36 Ecloud/8.6.3 Android/22 clientId/355325117317828 clientModel/SM-G930K imsi/460071114317824 clientChannelId/qq proVersion/1.0.6',
                                  "Referer" : "https://m.cloud.189.cn/zhuanti/2016/sign/index.jsp?albumBackupOpened=1",
                                  "Host" : "m.cloud.189.cn",
                                  "Accept-Encoding" : "gzip, deflate",
                              }
                              #签到
                              response = s.get(surl,headers=headers)
                              netdiskBonus = response.json()['netdiskBonus']
                              print(f"签到获得{netdiskBonus}M空间")
                              headers = {
                                  'User-Agent':'Mozilla/5.0 (Linux; Android 5.1.1; SM-G930K Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.136 Mobile Safari/537.36 Ecloud/8.6.3 Android/22 clientId/355325117317828 clientModel/SM-G930K imsi/460071114317824 clientChannelId/qq proVersion/1.0.6',
                                  "Referer" : "https://m.cloud.189.cn/zhuanti/2016/sign/index.jsp?albumBackupOpened=1",
                                  "Host" : "m.cloud.189.cn",
                                  "Accept-Encoding" : "gzip, deflate",
                              }
                              #第一次抽奖
                              response = s.get(url,headers=headers)
                              if ("prizeName" in response.text):
                                  #description = response.json()['description']
                                  #print(f"抽奖获得{description}")
                                  prizeName = response.json()['prizeName']
                                  print(f"抽奖获得{prizeName}")
                              else:
                                  try:
                                      if(response.json()['errorCode'] == "User_Not_Chance"):
                                          print("抽奖次数不足")
                                      else:
                                          print(response.text)
                                  except:
                                          print(str(response.status_code) + response.text)
                              #第二次抽奖
                              response = s.get(url2,headers=headers)
                              if ("prizeName" in response.text):
                                  #description = response.json()['description']
                                  #print(f"抽奖获得{description}")
                                  prizeName = response.json()['prizeName']
                                  print(f"抽奖获得{prizeName}")
                              else:
                                  try:
                                      if(response.json()['errorCode'] == "User_Not_Chance"):
                                          print("抽奖次数不足")
                                      else:
                                          print(response.text)
                                  except:
                                          print(str(response.status_code) + response.text)
                          
                          BI_RM = list("0123456789abcdefghijklmnopqrstuvwxyz")
                          def int2char(a):
                              return BI_RM[a]
                          
                          b64map = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
                          def b64tohex(a):
                              d = ""
                              e = 0
                              c = 0
                              for i in range(len(a)):
                                  if list(a)[i] != "=":
                                      v = b64map.index(list(a)[i])
                                      if 0 == e:
                                          e = 1
                                          d += int2char(v >> 2)
                                          c = 3 & v
                                      elif 1 == e:
                                          e = 2
                                          d += int2char(c << 2 | v >> 4)
                                          c = 15 & v
                                      elif 2 == e:
                                          e = 3
                                          d += int2char(c)
                                          d += int2char(v >> 2)
                                          c = 3 & v
                                      else:
                                          e = 0
                                          d += int2char(c << 2 | v >> 4)
                                          d += int2char(15 & v)
                              if e == 1:
                                  d += int2char(c << 2)
                              return d
                          
                          
                          def rsa_encode(j_rsakey, string):
                              rsa_key = f"-----BEGIN PUBLIC KEY-----\n{j_rsakey}\n-----END PUBLIC KEY-----"
                              pubkey = rsa.PublicKey.load_pkcs1_openssl_pem(rsa_key.encode())
                              result = b64tohex((base64.b64encode(rsa.encrypt(f'{string}'.encode(), pubkey))).decode())
                              return result
                          
                          def calculate_md5_sign(params):
                              return hashlib.md5('&'.join(sorted(params.split('&'))).encode('utf-8')).hexdigest()
                          
                          def login(username, password):
                              url = "https://cloud.189.cn/api/portal/loginUrl.action?redirectURL=https://cloud.189.cn/web/redirect.html"
                              r = s.get(url)
                              print("r:::"+r.text)
                              captchaToken = re.findall(r"captchaToken' value='(.+?)'", r.text)[0]
                              lt = re.findall(r'lt = "(.+?)"', r.text)[0]
                              returnUrl = re.findall(r"returnUrl = '(.+?)'", r.text)[0]
                              paramId = re.findall(r'paramId = "(.+?)"', r.text)[0]
                              j_rsakey = re.findall(r'j_rsaKey" value="(\S+)"', r.text, re.M)[0]
                              s.headers.update({"lt": lt})
                          
                              username = rsa_encode(j_rsakey, username)
                              password = rsa_encode(j_rsakey, password)
                              url = "https://open.e.189.cn/api/logbox/oauth2/loginSubmit.do"
                              headers = {
                                  'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:74.0) Gecko/20100101 Firefox/76.0',
                                  'Referer': 'https://open.e.189.cn/',
                                  }
                              data = {
                                  "appKey": "cloud",
                                  "accountType": '01',
                                  "userName": f"{{RSA}}{username}",
                                  "password": f"{{RSA}}{password}",
                                  "validateCode": "",
                                  "captchaToken": captchaToken,
                                  "returnUrl": returnUrl,
                                  "mailSuffix": "@189.cn",
                                  "paramId": paramId
                                  }
                              r = s.post(url, data=data, headers=headers, timeout=5)
                              if(r.json()['result'] == 0):
                                  print(r.json()['msg'])
                              else:
                                  print(r.json()['msg'])
                                  return "error"
                              redirect_url = r.json()['toUrl']
                              r = s.get(redirect_url)
                              return s
                          
                          if __name__ == "__main__":
                              main()```
                          1 条回复 最后回复
                          0
                          • L LMY

                            大佬们
                            这种怎么办呀?
                            获得1,获得1是个什么鬼?

                            Y 离线
                            Y 离线
                            yafengliang
                            🍌
                            写于 最后由 编辑
                            #21

                            @lmy 试试这个

                            import requests, time, re, rsa, json, base64
                            from urllib import parse
                            
                            s = requests.Session()
                            
                            username = "账号"
                            password = "密码"
                            
                            if(username == "" or password == ""):
                                username = input("账号:")
                                print(username[:3] + '****' + username[7:])
                                password = input("密码:")
                            
                            def main():
                                msg = login(username, password)
                                if(msg == "error"):
                                    return None
                                else:
                                    pass
                                rand = str(round(time.time()*1000))
                                surl = f'https://api.cloud.189.cn/mkt/userSign.action?rand={rand}&clientType=TELEANDROID&version=8.6.3&model=SM-G930K'
                                url = f'https://m.cloud.189.cn/v2/drawPrizeMarketDetails.action?taskId=TASK_SIGNIN&activityId=ACT_SIGNIN'
                                url2 = f'https://m.cloud.189.cn/v2/drawPrizeMarketDetails.action?taskId=TASK_SIGNIN_PHOTOS&activityId=ACT_SIGNIN'
                                headers = {
                                    'User-Agent':'Mozilla/5.0 (Linux; Android 5.1.1; SM-G930K Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.136 Mobile Safari/537.36 Ecloud/8.6.3 Android/22 clientId/355325117317828 clientModel/SM-G930K imsi/460071114317824 clientChannelId/qq proVersion/1.0.6',
                                    "Referer" : "https://m.cloud.189.cn/zhuanti/2016/sign/index.jsp?albumBackupOpened=1",
                                    "Host" : "m.cloud.189.cn",
                                    "Accept-Encoding" : "gzip, deflate",
                                }
                                #签到
                                response = s.get(surl,headers=headers)
                                netdiskBonus = response.json()['netdiskBonus']
                                print(f"签到获得{netdiskBonus}M空间")
                                headers = {
                                    'User-Agent':'Mozilla/5.0 (Linux; Android 5.1.1; SM-G930K Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.136 Mobile Safari/537.36 Ecloud/8.6.3 Android/22 clientId/355325117317828 clientModel/SM-G930K imsi/460071114317824 clientChannelId/qq proVersion/1.0.6',
                                    "Referer" : "https://m.cloud.189.cn/zhuanti/2016/sign/index.jsp?albumBackupOpened=1",
                                    "Host" : "m.cloud.189.cn",
                                    "Accept-Encoding" : "gzip, deflate",
                                }
                                #第一次抽奖
                                response = s.get(url,headers=headers)
                                if ("prizeName" in response.text):
                                    #description = response.json()['description']
                                    #print(f"抽奖获得{description}")
                                    prizeName = response.json()['prizeName']
                                    print(f"抽奖获得{prizeName}")
                                else:
                                    try:
                                        if(response.json()['errorCode'] == "User_Not_Chance"):
                                            print("抽奖次数不足")
                                        else:
                                            print(response.text)
                                    except:
                                            print(str(response.status_code) + response.text)
                                #第二次抽奖
                                response = s.get(url2,headers=headers)
                                if ("prizeName" in response.text):
                                    #description = response.json()['description']
                                    #print(f"抽奖获得{description}")
                                    prizeName = response.json()['prizeName']
                                    print(f"抽奖获得{prizeName}")
                                else:
                                    try:
                                        if(response.json()['errorCode'] == "User_Not_Chance"):
                                            print("抽奖次数不足")
                                        else:
                                            print(response.text)
                                    except:
                                            print(str(response.status_code) + response.text)
                            
                            BI_RM = list("0123456789abcdefghijklmnopqrstuvwxyz")
                            def int2char(a):
                                return BI_RM[a]
                            
                            b64map = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
                            def b64tohex(a):
                                d = ""
                                e = 0
                                c = 0
                                for i in range(len(a)):
                                    if list(a)[i] != "=":
                                        v = b64map.index(list(a)[i])
                                        if 0 == e:
                                            e = 1
                                            d += int2char(v >> 2)
                                            c = 3 & v
                                        elif 1 == e:
                                            e = 2
                                            d += int2char(c << 2 | v >> 4)
                                            c = 15 & v
                                        elif 2 == e:
                                            e = 3
                                            d += int2char(c)
                                            d += int2char(v >> 2)
                                            c = 3 & v
                                        else:
                                            e = 0
                                            d += int2char(c << 2 | v >> 4)
                                            d += int2char(15 & v)
                                if e == 1:
                                    d += int2char(c << 2)
                                return d
                            
                            
                            def rsa_encode(j_rsakey, string):
                                rsa_key = f"-----BEGIN PUBLIC KEY-----\n{j_rsakey}\n-----END PUBLIC KEY-----"
                                pubkey = rsa.PublicKey.load_pkcs1_openssl_pem(rsa_key.encode())
                                result = b64tohex((base64.b64encode(rsa.encrypt(f'{string}'.encode(), pubkey))).decode())
                                return result
                            
                            def calculate_md5_sign(params):
                                return hashlib.md5('&'.join(sorted(params.split('&'))).encode('utf-8')).hexdigest()
                            
                            def login(username, password):
                                url = "https://cloud.189.cn/api/portal/loginUrl.action?redirectURL=https://cloud.189.cn/web/redirect.html"
                                r = s.get(url)
                                print("r:::"+r.text)
                                captchaToken = re.findall(r"captchaToken' value='(.+?)'", r.text)[0]
                                lt = re.findall(r'lt = "(.+?)"', r.text)[0]
                                returnUrl = re.findall(r"returnUrl = '(.+?)'", r.text)[0]
                                paramId = re.findall(r'paramId = "(.+?)"', r.text)[0]
                                j_rsakey = re.findall(r'j_rsaKey" value="(\S+)"', r.text, re.M)[0]
                                s.headers.update({"lt": lt})
                            
                                username = rsa_encode(j_rsakey, username)
                                password = rsa_encode(j_rsakey, password)
                                url = "https://open.e.189.cn/api/logbox/oauth2/loginSubmit.do"
                                headers = {
                                    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:74.0) Gecko/20100101 Firefox/76.0',
                                    'Referer': 'https://open.e.189.cn/',
                                    }
                                data = {
                                    "appKey": "cloud",
                                    "accountType": '01',
                                    "userName": f"{{RSA}}{username}",
                                    "password": f"{{RSA}}{password}",
                                    "validateCode": "",
                                    "captchaToken": captchaToken,
                                    "returnUrl": returnUrl,
                                    "mailSuffix": "@189.cn",
                                    "paramId": paramId
                                    }
                                r = s.post(url, data=data, headers=headers, timeout=5)
                                if(r.json()['result'] == 0):
                                    print(r.json()['msg'])
                                else:
                                    print(r.json()['msg'])
                                    return "error"
                                redirect_url = r.json()['toUrl']
                                r = s.get(redirect_url)
                                return s
                            
                            if __name__ == "__main__":
                                main()
                            
                            L 1 条回复 最后回复
                            1
                            • Y yafengliang

                              @lmy 试试这个

                              import requests, time, re, rsa, json, base64
                              from urllib import parse
                              
                              s = requests.Session()
                              
                              username = "账号"
                              password = "密码"
                              
                              if(username == "" or password == ""):
                                  username = input("账号:")
                                  print(username[:3] + '****' + username[7:])
                                  password = input("密码:")
                              
                              def main():
                                  msg = login(username, password)
                                  if(msg == "error"):
                                      return None
                                  else:
                                      pass
                                  rand = str(round(time.time()*1000))
                                  surl = f'https://api.cloud.189.cn/mkt/userSign.action?rand={rand}&clientType=TELEANDROID&version=8.6.3&model=SM-G930K'
                                  url = f'https://m.cloud.189.cn/v2/drawPrizeMarketDetails.action?taskId=TASK_SIGNIN&activityId=ACT_SIGNIN'
                                  url2 = f'https://m.cloud.189.cn/v2/drawPrizeMarketDetails.action?taskId=TASK_SIGNIN_PHOTOS&activityId=ACT_SIGNIN'
                                  headers = {
                                      'User-Agent':'Mozilla/5.0 (Linux; Android 5.1.1; SM-G930K Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.136 Mobile Safari/537.36 Ecloud/8.6.3 Android/22 clientId/355325117317828 clientModel/SM-G930K imsi/460071114317824 clientChannelId/qq proVersion/1.0.6',
                                      "Referer" : "https://m.cloud.189.cn/zhuanti/2016/sign/index.jsp?albumBackupOpened=1",
                                      "Host" : "m.cloud.189.cn",
                                      "Accept-Encoding" : "gzip, deflate",
                                  }
                                  #签到
                                  response = s.get(surl,headers=headers)
                                  netdiskBonus = response.json()['netdiskBonus']
                                  print(f"签到获得{netdiskBonus}M空间")
                                  headers = {
                                      'User-Agent':'Mozilla/5.0 (Linux; Android 5.1.1; SM-G930K Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.136 Mobile Safari/537.36 Ecloud/8.6.3 Android/22 clientId/355325117317828 clientModel/SM-G930K imsi/460071114317824 clientChannelId/qq proVersion/1.0.6',
                                      "Referer" : "https://m.cloud.189.cn/zhuanti/2016/sign/index.jsp?albumBackupOpened=1",
                                      "Host" : "m.cloud.189.cn",
                                      "Accept-Encoding" : "gzip, deflate",
                                  }
                                  #第一次抽奖
                                  response = s.get(url,headers=headers)
                                  if ("prizeName" in response.text):
                                      #description = response.json()['description']
                                      #print(f"抽奖获得{description}")
                                      prizeName = response.json()['prizeName']
                                      print(f"抽奖获得{prizeName}")
                                  else:
                                      try:
                                          if(response.json()['errorCode'] == "User_Not_Chance"):
                                              print("抽奖次数不足")
                                          else:
                                              print(response.text)
                                      except:
                                              print(str(response.status_code) + response.text)
                                  #第二次抽奖
                                  response = s.get(url2,headers=headers)
                                  if ("prizeName" in response.text):
                                      #description = response.json()['description']
                                      #print(f"抽奖获得{description}")
                                      prizeName = response.json()['prizeName']
                                      print(f"抽奖获得{prizeName}")
                                  else:
                                      try:
                                          if(response.json()['errorCode'] == "User_Not_Chance"):
                                              print("抽奖次数不足")
                                          else:
                                              print(response.text)
                                      except:
                                              print(str(response.status_code) + response.text)
                              
                              BI_RM = list("0123456789abcdefghijklmnopqrstuvwxyz")
                              def int2char(a):
                                  return BI_RM[a]
                              
                              b64map = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"
                              def b64tohex(a):
                                  d = ""
                                  e = 0
                                  c = 0
                                  for i in range(len(a)):
                                      if list(a)[i] != "=":
                                          v = b64map.index(list(a)[i])
                                          if 0 == e:
                                              e = 1
                                              d += int2char(v >> 2)
                                              c = 3 & v
                                          elif 1 == e:
                                              e = 2
                                              d += int2char(c << 2 | v >> 4)
                                              c = 15 & v
                                          elif 2 == e:
                                              e = 3
                                              d += int2char(c)
                                              d += int2char(v >> 2)
                                              c = 3 & v
                                          else:
                                              e = 0
                                              d += int2char(c << 2 | v >> 4)
                                              d += int2char(15 & v)
                                  if e == 1:
                                      d += int2char(c << 2)
                                  return d
                              
                              
                              def rsa_encode(j_rsakey, string):
                                  rsa_key = f"-----BEGIN PUBLIC KEY-----\n{j_rsakey}\n-----END PUBLIC KEY-----"
                                  pubkey = rsa.PublicKey.load_pkcs1_openssl_pem(rsa_key.encode())
                                  result = b64tohex((base64.b64encode(rsa.encrypt(f'{string}'.encode(), pubkey))).decode())
                                  return result
                              
                              def calculate_md5_sign(params):
                                  return hashlib.md5('&'.join(sorted(params.split('&'))).encode('utf-8')).hexdigest()
                              
                              def login(username, password):
                                  url = "https://cloud.189.cn/api/portal/loginUrl.action?redirectURL=https://cloud.189.cn/web/redirect.html"
                                  r = s.get(url)
                                  print("r:::"+r.text)
                                  captchaToken = re.findall(r"captchaToken' value='(.+?)'", r.text)[0]
                                  lt = re.findall(r'lt = "(.+?)"', r.text)[0]
                                  returnUrl = re.findall(r"returnUrl = '(.+?)'", r.text)[0]
                                  paramId = re.findall(r'paramId = "(.+?)"', r.text)[0]
                                  j_rsakey = re.findall(r'j_rsaKey" value="(\S+)"', r.text, re.M)[0]
                                  s.headers.update({"lt": lt})
                              
                                  username = rsa_encode(j_rsakey, username)
                                  password = rsa_encode(j_rsakey, password)
                                  url = "https://open.e.189.cn/api/logbox/oauth2/loginSubmit.do"
                                  headers = {
                                      'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:74.0) Gecko/20100101 Firefox/76.0',
                                      'Referer': 'https://open.e.189.cn/',
                                      }
                                  data = {
                                      "appKey": "cloud",
                                      "accountType": '01',
                                      "userName": f"{{RSA}}{username}",
                                      "password": f"{{RSA}}{password}",
                                      "validateCode": "",
                                      "captchaToken": captchaToken,
                                      "returnUrl": returnUrl,
                                      "mailSuffix": "@189.cn",
                                      "paramId": paramId
                                      }
                                  r = s.post(url, data=data, headers=headers, timeout=5)
                                  if(r.json()['result'] == 0):
                                      print(r.json()['msg'])
                                  else:
                                      print(r.json()['msg'])
                                      return "error"
                                  redirect_url = r.json()['toUrl']
                                  r = s.get(redirect_url)
                                  return s
                              
                              if __name__ == "__main__":
                                  main()
                              
                              L 离线
                              L 离线
                              LMY
                              写于 最后由 编辑
                              #22

                              @yafengliang 好的,谢谢大佬

                              1 条回复 最后回复
                              0
                              • W wushuiyin

                                前段时间的几个bug 撸了几个t 撸了近9年的会员 估计后面还会有bug

                                868 离线
                                868 离线
                                86
                                🍌
                                写于 最后由 编辑
                                #23

                                @wushuiyin 卧槽,都没听说,大佬路子还是宽啊

                                1 条回复 最后回复
                                0
                                • spacemanS 离线
                                  spacemanS 离线
                                  spaceman
                                  🍌
                                  写于 最后由 编辑
                                  #24

                                  想知道怎么使用的。对于小白来说现在搞点儿免费的门槛太高了

                                  M 1 条回复 最后回复
                                  0
                                  • spacemanS spaceman

                                    想知道怎么使用的。对于小白来说现在搞点儿免费的门槛太高了

                                    M 离线
                                    M 离线
                                    ma
                                    🍌
                                    写于 最后由 编辑
                                    #25

                                    @spaceman
                                    如果本机安装有python环境,修改成自己的手机号和密码,可以直接在本机跑。
                                    进阶一点,可以设置电脑计划任务,自动或者定时执行,不一定非要在云端

                                    支付宝搜:704557483,领消费红包

                                    1 条回复 最后回复
                                    0
                                    • Y 离线
                                      Y 离线
                                      yafengliang
                                      🍌
                                      写于 最后由 编辑
                                      #26

                                      gitHub可自动执行

                                      1 条回复 最后回复
                                      0
                                      • I 离线
                                        I 离线
                                        invoker
                                        🍌
                                        写于 最后由 编辑
                                        #27

                                        dalao们,一个脚本多账号该怎么弄呢

                                        Y 2 条回复 最后回复
                                        0
                                        • I invoker

                                          dalao们,一个脚本多账号该怎么弄呢

                                          Y 离线
                                          Y 离线
                                          yafengliang
                                          🍌
                                          写于 最后由 编辑
                                          #28

                                          @invoker gitHub可以的 https://github.com/YafengLiang/Check189

                                          I 1 条回复 最后回复
                                          0
                                          回复
                                          • 在新帖中回复
                                          登录后回复
                                          • 从旧到新
                                          • 从新到旧
                                          • 最多赞同


                                          • 1
                                          • 2
                                          Popular Topics - 热门主题
                                          • Bug! Bug !Google One 学生优惠 可无门槛验证
                                            mztcM
                                            mztc
                                            3
                                            14
                                            5.2k

                                          • 中国科技云免费白嫖1 年 Cursor 使用权!快~~~
                                            D
                                            d914954480
                                            1
                                            7
                                            2.1k

                                          • MySQL 8.0 OCP 限时免费考
                                            HebutMrLiuH
                                            HebutMrLiu
                                            1
                                            5
                                            385

                                          • 免费科技代理流量巨多
                                            孤
                                            孤傲的王
                                            1
                                            4
                                            163

                                          • 阿里云国际站轻量应用服务器 2C+1G+200M带宽 仅9.9美元一年!
                                            T
                                            Test
                                            1
                                            4
                                            1.3k

                                          • 京东冲100明天送一张25-20外卖卷
                                            我是小马甲~M
                                            我是小马甲~
                                            1
                                            2
                                            719

                                          • 登录

                                          • 没有帐号? 注册

                                          • 登录或注册以进行搜索。
                                          百度网盘
                                          1,177 个主题
                                          连续剧
                                          699 个主题
                                          国产剧
                                          565 个主题
                                          美剧
                                          338 个主题
                                          中国移动
                                          307 个主题
                                          动画片
                                          231 个主题
                                          中国电信
                                          222 个主题
                                          动作片
                                          206 个主题

                                          206

                                          在线

                                          39.9k

                                          用户

                                          40.1k

                                          主题

                                          110.4k

                                          帖子
                                          • 第一个帖子
                                            最后一个帖子