import sys import requests as r import json import telepot tele_enable=False sc_enable=False sign='https://n.cg.163.com/api/v2/sign-today' current='https://n.cg.163.com/api/v2/client-settings/@current' cookies=sys.argv[1].split('#') teleid="" #sys.argv[2] teletoken="" #sys.argv[3] sckey=sys.argv[4] if cookies=="": print('[网易云游戏自动签到]未设置cookie,正在退出……') sys.exit() if teleid!="" and teletoken!="": tele_enable=True bot=telepot.Bot(teletoken) if sckey!="": sc_enable=True class Error(Exception): pass def signin(url,cookie): header={ 'Accept': 'application/json, text/plain, */*', 'Accept-Encoding': 'gzip, deflate, br', 'Accept-Language': 'zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7,ja-JP;q=0.6,ja;q=0.5', 'Authorization': str(cookie), 'Connection': 'keep-alive', 'Content-Length': '0', 'Host': 'n.cg.163.com', 'Origin': 'https://cg.163.com', 'Referer': 'https://cg.163.com/', 'Sec-Fetch-Dest': 'empty', 'Sec-Fetch-Mode': 'cors', 'Sec-Fetch-Site': 'same-site', 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36', 'X-Platform': '0' } result=r.post(url=url,headers=header) return result def getme(url,cookie): header={ 'Host': 'n.cg.163.com', 'Connection': 'keep-alive', 'Accept': 'application/json, text/plain, */*', 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36', 'X-Platform': '0', 'Authorization': str(cookie), 'Origin': 'https://cg.163.com', 'Sec-Fetch-Site': 'same-site', 'Sec-Fetch-Mode': 'cors', 'Sec-Fetch-Dest': 'empty', 'Referer': 'https://cg.163.com/', 'Accept-Encoding': 'gzip, deflate, br', 'Accept-Language': 'zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7,ja-JP;q=0.6,ja;q=0.5' } result=r.get(url=url,headers=header) return result def send(id,message): if tele_enable: bot.sendMessage(id, message, parse_mode=None, disable_web_page_preview=None, disable_notification=None, reply_to_message_id=None, reply_markup=None) def scsend(SCKEY,message): sc_url='http://sc.ftqq.com/{}.send?text=网易云游戏自动签到脚本&desp={}'.format(SCKEY,message) if sc_enable: r.get(url=sc_url) if __name__ == "__main__": success=[] failure=[] msg=[] print(len(cookies)) for i in cookies: print(i) cookie=i try: me=getme(current,cookie) except: message='第{}个账号验证失败!请检查Cookie是否过期!或者附上报错信息到 https://github.com/GamerNoTitle/wyycg-autosignin/issues 发起issue'.format(cookies.index(i)+1) failure.append(cookie) msg.append(message) if(me.status_code!=200): message='第{}个账号验证失败!请检查Cookie是否过期!或者附上报错信息到 https://github.com/GamerNoTitle/wyycg-autosignin/issues 发起issue'.format(cookies.index(i)+1) failure.append(cookie) msg.append(message) try: sign=signin(sign,cookie) except: message='第{}个账号签到失败,回显状态码为{}\n具体错误信息如下:\n{}'.format(cookies.index(i)+1,sign.status_code,sign.text) failure.append(cookie) msg.append(message) if(sign.status_code==200): message='第{}个账号签到成功!'.format(cookies.index(i)+1) success.append(cookie) msg.append(message) else: message='第{}个账号签到失败,回显状态码为{}\n具体错误信息如下:\n{}'.format(cookies.index(i)+1,sign.status_code,sign.text) failure.append(cookie) msg.append(message) outputmsg=str(msg).replace("[",'').replace(']','').replace(',','
').replace('\'','') infomsg=''' 感谢使用来自GamerNoTitle网易云游戏自动签到脚本
今日签到结果如下:
成功数量:{0}/{2}
失败数量:{1}/{2}
具体情况如下:
{3} '''.format(len(success),len(failure),len(cookies),outputmsg) scsend(sckey,infomsg) send(teleid,infomsg) print(infomsg) if(len(msg)!=0): raise Error