mirror of https://github.com/yuxian158/check.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
115 lines
3.3 KiB
115 lines
3.3 KiB
""" |
|
|
|
建议cron: 30 7 * * * python3 ck_hlx.py |
|
new Env('葫芦侠签到'); |
|
|
|
""" |
|
import requests |
|
import os |
|
from getENV import getENv |
|
from checksendNotify import send |
|
import json |
|
r = requests.Session() |
|
|
|
|
|
def login(user, passwd): |
|
url = 'http://floor.huluxia.com/account/login/ANDROID/4.0?platform=2&gkey=000000&app_version=4.0.0.6.2' \ |
|
'&versioncode=20141433&market_id=floor_baidu&_key=&device_code=%5Bw%5D02%3A00%3A00%3A00%3A00%3A00 ' |
|
params = { |
|
'account': user, |
|
'login_type': '2', |
|
'password': passwd |
|
} |
|
login_res = r.post(url=url, data=params) |
|
login_res = login_res.json() |
|
nick = login_res['user']['nick'] |
|
key = login_res['_key'] |
|
s_key = login_res['session_key'] |
|
return nick, key, s_key |
|
|
|
|
|
def check(key): |
|
url1 = 'http://floor.huluxia.com/user/status/ANDROID/2.1' |
|
params = { |
|
'platform': '2', |
|
'gkey': '000000', |
|
'app_version': '4.0.0.6.3', |
|
'versioncode': '20141434', |
|
'market_id': 'floor_baidu', |
|
'_key': key, |
|
'device_code': '%5Bw%5D02%3A00%3A00%3A00%3A00%3A00', |
|
} |
|
check_req = r.get(url=url1, params=params) |
|
check_req = check_req.json() |
|
status = check_req['status'] |
|
if status == 0: |
|
raise Exception("令牌验证失败") |
|
elif status == 1: |
|
pass |
|
return status |
|
|
|
|
|
def category(key): |
|
global experienceVal |
|
titles = [] |
|
categoryIDs = [] |
|
category_url = 'http://floor.huluxia.com/category/list/ANDROID/2.0' |
|
params = { |
|
'platform': '2', |
|
'gkey': '000000', |
|
'app_version': '4.0.0.6.3', |
|
'versioncode': '20141434', |
|
'market_id': 'floor_huluxia', |
|
'_key': key, |
|
'device_code': '%5Bw%5D02%3A00%3A00%3A00%3A00%3A00', |
|
'is_hidden': '1' |
|
} |
|
category_res = r.get(url=category_url, params=params) |
|
category_res = category_res.json() |
|
category_res = category_res["categories"] |
|
for i in range(3, len(category_res)): |
|
res = category_res[i] |
|
titles.append(res['title']) |
|
categoryIDs.append(res['categoryID']) |
|
# print(res) |
|
url = f'http://floor.huluxia.com/user/signin/ANDROID/4.0' |
|
all_experienceVal = 0 |
|
for i in range(0, len(categoryIDs)): |
|
IDS = str(categoryIDs[i]) |
|
params = { |
|
'platform': '2', |
|
'gkey': '000000', |
|
'app_version': '4.0.0.6.3', |
|
'versioncode': '20141434', |
|
'market_id': 'floor_baidu', |
|
'_key': key, |
|
'device_code': '%5Bw%5D02%3A00%3A00%3A00%3A00%3A00', |
|
'cat_id': IDS |
|
} |
|
try: |
|
experienceVal = r.get(url=url, params=params).json()['experienceVal'] |
|
except: |
|
experienceVal = 0 |
|
finally: |
|
all_experienceVal = all_experienceVal + experienceVal |
|
return '签到成功 共获得{}点经验'.format(all_experienceVal) |
|
|
|
|
|
def hlx(user, passwd): |
|
nick, key, s_key = login(user, passwd) |
|
check(key) |
|
return "用户名:" + nick + category(key) |
|
|
|
|
|
def start(): |
|
getENv() |
|
with open("/ql/config/check.json", "r", encoding="utf-8") as f: |
|
datas = json.loads(f.read()) |
|
_check_item = datas.get("HLX", []) |
|
res = hlx(user=_check_item.get('user'),passwd=_check_item.get('password')) |
|
print(res) |
|
send('葫芦侠', res) |
|
|
|
|
|
if __name__ == '__main__': |
|
start()
|
|
|