mirror of
https://github.com/ngfchl/ptools
synced 2023-07-10 13:41:22 +08:00
1. 修复皇后与U2用户等级获取错误的BUG
2. 修复皇后签到,增加签到检测 3. 修复第一次初始化数据库时无计划任务的bug
This commit is contained in:
@@ -1 +1 @@
|
||||
python manage.py dumpdata pt_site.site auto_pt.task auto_pt.taskjob --indent 2 -o pt.json
|
||||
python manage.py dumpdata pt_site.site auto_pt.task auto_pt.taskjob django_apscheduler.djangojob --indent 2 -o pt.json
|
||||
54
pt.json
54
pt.json
@@ -3717,7 +3717,7 @@
|
||||
"pk": 54,
|
||||
"fields": {
|
||||
"created_at": "2022-08-27T18:24:32.917",
|
||||
"updated_at": "2022-11-18T13:58:53.685",
|
||||
"updated_at": "2022-11-20T22:35:59.512",
|
||||
"url": "https://www.open.cd/",
|
||||
"name": "OpenCD",
|
||||
"logo": "https://www.open.cd/favicon.ico",
|
||||
@@ -3778,7 +3778,7 @@
|
||||
"my_sp_rule": "//font[@class=\"color_bonus\"]/following-sibling::text()[1]",
|
||||
"hour_sp_rule": "//div[contains(text(),\"每小时能获取\")]/text()[1]",
|
||||
"my_bonus_rule": "//font[@class=\"color_bonus\" and contains(text(),\"积分\")]/following-sibling::text()[1]",
|
||||
"my_level_rule": "//span[@class=\"medium\"]/span[@class=\"nowrap\"]/a[contains(@class,\"_Name\")]/@class",
|
||||
"my_level_rule": "//div/span[@class=\"nowrap\"]/a[contains(@class,\"_Name\")]/@class",
|
||||
"my_passkey_rule": "//td[contains(text(),\"密钥\")]/following-sibling::td[1]/text()",
|
||||
"my_uid_rule": "//a[contains(@class,\"_Name\") and contains(@href,\"userdetails.php?id=\")]/@href",
|
||||
"my_hr_rule": "//tr[14]/td[2]/a/text()",
|
||||
@@ -5967,16 +5967,16 @@
|
||||
"pk": 17,
|
||||
"fields": {
|
||||
"created_at": "2022-09-20T15:10:06.547",
|
||||
"updated_at": "2022-11-03T23:07:30.300",
|
||||
"updated_at": "2022-11-20T22:43:29.136",
|
||||
"task": 1,
|
||||
"job_id": "每天23点50分获取",
|
||||
"trigger": "cron",
|
||||
"task_exec": false,
|
||||
"replace_existing": true,
|
||||
"expression_time": "50 23 * * *",
|
||||
"expression_time": "40 23 * * *",
|
||||
"start_date": "2022-09-20T15:10:00",
|
||||
"end_date": null,
|
||||
"misfire_grace_time": 120,
|
||||
"misfire_grace_time": 1200,
|
||||
"jitter": 120,
|
||||
"args": null
|
||||
}
|
||||
@@ -5986,18 +5986,58 @@
|
||||
"pk": 18,
|
||||
"fields": {
|
||||
"created_at": "2022-11-03T08:35:13.023",
|
||||
"updated_at": "2022-11-03T23:07:30.286",
|
||||
"updated_at": "2022-11-20T22:43:54.066",
|
||||
"task": 3,
|
||||
"job_id": "清楚过期种子",
|
||||
"trigger": "interval",
|
||||
"task_exec": false,
|
||||
"replace_existing": true,
|
||||
"expression_time": "2*3600",
|
||||
"expression_time": "12*3600",
|
||||
"start_date": "2022-11-03T08:35:00",
|
||||
"end_date": null,
|
||||
"misfire_grace_time": 600,
|
||||
"jitter": 1200,
|
||||
"args": null
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "django_apscheduler.djangojob",
|
||||
"pk": "拉取最新种子",
|
||||
"fields": {
|
||||
"next_run_time": null,
|
||||
"job_state": "gAWV7AEAAAAAAAB9lCiMB3ZlcnNpb26USwGMAmlklIwS5ouJ5Y+W5pyA5paw56eN5a2QlIwEZnVuY5SMInB0X3NpdGUudmlld3M6YXV0b191cGRhdGVfdG9ycmVudHOUjAd0cmlnZ2VylIwdYXBzY2hlZHVsZXIudHJpZ2dlcnMuaW50ZXJ2YWyUjA9JbnRlcnZhbFRyaWdnZXKUk5QpgZR9lChoAUsCjAh0aW1lem9uZZSMBHB5dHqUjAJfcJSTlCiMDUFzaWEvU2hhbmdoYWmUTehxSwCMA0xNVJR0lFKUjApzdGFydF9kYXRllIwIZGF0ZXRpbWWUjAhkYXRldGltZZSTlEMKB+YKEAATFQJYXJRoDyhoEE2AcEsAjANDU1SUdJRSlIaUUpSMCGVuZF9kYXRllE6MCGludGVydmFslGgVjAl0aW1lZGVsdGGUk5RLAE1QRksAh5RSlIwGaml0dGVylE51YowIZXhlY3V0b3KUjAdkZWZhdWx0lIwEYXJnc5QpjAZrd2FyZ3OUfZSMBG5hbWWUjBRhdXRvX3VwZGF0ZV90b3JyZW50c5SMEm1pc2ZpcmVfZ3JhY2VfdGltZZRLeIwIY29hbGVzY2WUiIwNbWF4X2luc3RhbmNlc5RLAYwNbmV4dF9ydW5fdGltZZROdS4="
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "django_apscheduler.djangojob",
|
||||
"pk": "更新个人数据",
|
||||
"fields": {
|
||||
"next_run_time": null,
|
||||
"job_state": "gAWV4gEAAAAAAAB9lCiMB3ZlcnNpb26USwGMAmlklIwS5pu05paw5Liq5Lq65pWw5o2ulIwEZnVuY5SMHXB0X3NpdGUudmlld3M6YXV0b19nZXRfc3RhdHVzlIwHdHJpZ2dlcpSMHWFwc2NoZWR1bGVyLnRyaWdnZXJzLmludGVydmFslIwPSW50ZXJ2YWxUcmlnZ2VylJOUKYGUfZQoaAFLAowIdGltZXpvbmWUjARweXR6lIwCX3CUk5QojA1Bc2lhL1NoYW5naGFplE3ocUsAjANMTVSUdJRSlIwKc3RhcnRfZGF0ZZSMCGRhdGV0aW1llIwIZGF0ZXRpbWWUk5RDCgfmCwQEBx4EzhGUaA8oaBBNgHBLAIwDQ1NUlHSUUpSGlFKUjAhlbmRfZGF0ZZROjAhpbnRlcnZhbJRoFYwJdGltZWRlbHRhlJOUSwBNUEZLAIeUUpSMBmppdHRlcpROdWKMCGV4ZWN1dG9ylIwHZGVmYXVsdJSMBGFyZ3OUKYwGa3dhcmdzlH2UjARuYW1llIwPYXV0b19nZXRfc3RhdHVzlIwSbWlzZmlyZV9ncmFjZV90aW1llEt4jAhjb2FsZXNjZZSIjA1tYXhfaW5zdGFuY2VzlEsBjA1uZXh0X3J1bl90aW1llE51Lg=="
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "django_apscheduler.djangojob",
|
||||
"pk": "每天23点50分获取",
|
||||
"fields": {
|
||||
"next_run_time": null,
|
||||
"job_state": "gAWVNAQAAAAAAAB9lCiMB3ZlcnNpb26USwGMAmlklIwW5q+P5aSpMjPngrk1MOWIhuiOt+WPlpSMBGZ1bmOUjB1wdF9zaXRlLnZpZXdzOmF1dG9fZ2V0X3N0YXR1c5SMB3RyaWdnZXKUjBlhcHNjaGVkdWxlci50cmlnZ2Vycy5jcm9ulIwLQ3JvblRyaWdnZXKUk5QpgZR9lChoAUsCjAh0aW1lem9uZZSMG3B5dHpfZGVwcmVjYXRpb25fc2hpbS5faW1wbJSMCXdyYXBfem9uZZSTlIwIYnVpbHRpbnOUjAdnZXRhdHRylJOUjAh6b25laW5mb5SMCFpvbmVJbmZvlJOUjAlfdW5waWNrbGWUhpRSlIwNQXNpYS9TaGFuZ2hhaZRLAYaUUpSMDUFzaWEvU2hhbmdoYWmUhpRSlIwKc3RhcnRfZGF0ZZROjAhlbmRfZGF0ZZROjAZmaWVsZHOUXZQojCBhcHNjaGVkdWxlci50cmlnZ2Vycy5jcm9uLmZpZWxkc5SMCUJhc2VGaWVsZJSTlCmBlH2UKIwEbmFtZZSMBHllYXKUjAppc19kZWZhdWx0lIiMC2V4cHJlc3Npb25zlF2UjCVhcHNjaGVkdWxlci50cmlnZ2Vycy5jcm9uLmV4cHJlc3Npb25zlIwNQWxsRXhwcmVzc2lvbpSTlCmBlH2UjARzdGVwlE5zYmF1YmgjjApNb250aEZpZWxklJOUKYGUfZQoaCiMBW1vbnRolGgqiWgrXZRoLymBlH2UaDJOc2JhdWJoI4wPRGF5T2ZNb250aEZpZWxklJOUKYGUfZQoaCiMA2RheZRoKoloK12UaC8pgZR9lGgyTnNiYXViaCOMCVdlZWtGaWVsZJSTlCmBlH2UKGgojAR3ZWVrlGgqiGgrXZRoLymBlH2UaDJOc2JhdWJoI4wORGF5T2ZXZWVrRmllbGSUk5QpgZR9lChoKIwLZGF5X29mX3dlZWuUaCqJaCtdlGgvKYGUfZRoMk5zYmF1YmglKYGUfZQoaCiMBGhvdXKUaCqJaCtdlGgtjA9SYW5nZUV4cHJlc3Npb26Uk5QpgZR9lChoMk6MBWZpcnN0lEsXjARsYXN0lEsXdWJhdWJoJSmBlH2UKGgojAZtaW51dGWUaCqJaCtdlGhYKYGUfZQoaDJOaFtLKGhcSyh1YmF1YmglKYGUfZQoaCiMBnNlY29uZJRoKohoK12UaFgpgZR9lChoMk5oW0sAaFxLAHViYXViZYwGaml0dGVylE51YowIZXhlY3V0b3KUjAdkZWZhdWx0lIwEYXJnc5QpjAZrd2FyZ3OUfZRoKIwPYXV0b19nZXRfc3RhdHVzlIwSbWlzZmlyZV9ncmFjZV90aW1llEt4jAhjb2FsZXNjZZSIjA1tYXhfaW5zdGFuY2VzlEsBjA1uZXh0X3J1bl90aW1llE51Lg=="
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "django_apscheduler.djangojob",
|
||||
"pk": "清楚过期种子",
|
||||
"fields": {
|
||||
"next_run_time": null,
|
||||
"job_state": "gAWV+wEAAAAAAAB9lCiMB3ZlcnNpb26USwGMAmlklIwS5riF5qWa6L+H5pyf56eN5a2QlIwEZnVuY5SMKXB0X3NpdGUudmlld3M6YXV0b19yZW1vdmVfZXhwaXJlX3RvcnJlbnRzlIwHdHJpZ2dlcpSMHWFwc2NoZWR1bGVyLnRyaWdnZXJzLmludGVydmFslIwPSW50ZXJ2YWxUcmlnZ2VylJOUKYGUfZQoaAFLAowIdGltZXpvbmWUjARweXR6lIwCX3CUk5QojA1Bc2lhL1NoYW5naGFplE3ocUsAjANMTVSUdJRSlIwKc3RhcnRfZGF0ZZSMCGRhdGV0aW1llIwIZGF0ZXRpbWWUk5RDCgfmCxUKKzYA5OWUaA8oaBBNgHBLAIwDQ1NUlHSUUpSGlFKUjAhlbmRfZGF0ZZROjAhpbnRlcnZhbJRoFYwJdGltZWRlbHRhlJOUSwBNwKhLAIeUUpSMBmppdHRlcpROdWKMCGV4ZWN1dG9ylIwHZGVmYXVsdJSMBGFyZ3OUKYwGa3dhcmdzlH2UjARuYW1llIwbYXV0b19yZW1vdmVfZXhwaXJlX3RvcnJlbnRzlIwSbWlzZmlyZV9ncmFjZV90aW1llE1YAowIY29hbGVzY2WUiIwNbWF4X2luc3RhbmNlc5RLAYwNbmV4dF9ydW5fdGltZZROdS4="
|
||||
}
|
||||
},
|
||||
{
|
||||
"model": "django_apscheduler.djangojob",
|
||||
"pk": "自动签到",
|
||||
"fields": {
|
||||
"next_run_time": null,
|
||||
"job_state": "gAWV1gEAAAAAAAB9lCiMB3ZlcnNpb26USwGMAmlklIwM6Ieq5Yqo562+5YiwlIwEZnVuY5SMGnB0X3NpdGUudmlld3M6YXV0b19zaWduX2lulIwHdHJpZ2dlcpSMHWFwc2NoZWR1bGVyLnRyaWdnZXJzLmludGVydmFslIwPSW50ZXJ2YWxUcmlnZ2VylJOUKYGUfZQoaAFLAowIdGltZXpvbmWUjARweXR6lIwCX3CUk5QojA1Bc2lhL1NoYW5naGFplE3ocUsAjANMTVSUdJRSlIwKc3RhcnRfZGF0ZZSMCGRhdGV0aW1llIwIZGF0ZXRpbWWUk5RDCgfmCwQGBx4EpRaUaA8oaBBNgHBLAIwDQ1NUlHSUUpSGlFKUjAhlbmRfZGF0ZZROjAhpbnRlcnZhbJRoFYwJdGltZWRlbHRhlJOUSwBNcGJLAIeUUpSMBmppdHRlcpROdWKMCGV4ZWN1dG9ylIwHZGVmYXVsdJSMBGFyZ3OUKYwGa3dhcmdzlH2UjARuYW1llIwMYXV0b19zaWduX2lulIwSbWlzZmlyZV9ncmFjZV90aW1llEt4jAhjb2FsZXNjZZSIjA1tYXhfaW5zdGFuY2VzlEsBjA1uZXh0X3J1bl90aW1llE51Lg=="
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
@@ -658,6 +658,19 @@ class PtSpider:
|
||||
def sign_in_opencd(self, my_site: MySite):
|
||||
"""皇后签到"""
|
||||
site = my_site.site
|
||||
check_url = site.url + site.page_user
|
||||
res_check = self.send_request(
|
||||
my_site=my_site,
|
||||
method='get',
|
||||
url=check_url)
|
||||
href_sign_in = self.parse(res_check, '//a[@href="/plugin_sign-in.php?cmd=show-log"]')
|
||||
if len(href_sign_in) >= 1:
|
||||
return CommonResponse.success(
|
||||
status=StatusCodeEnum.OK,
|
||||
data={
|
||||
'state': 'false'
|
||||
}
|
||||
)
|
||||
url = site.url + site.page_sign_in.lstrip('/')
|
||||
logger.info('# 开启验证码!')
|
||||
res = self.send_request(
|
||||
@@ -690,7 +703,13 @@ class PtSpider:
|
||||
my_site=my_site,
|
||||
method=site.sign_in_method,
|
||||
url=site.url + 'plugin_sign-in.php?cmd=signin', data=data)
|
||||
logger.info('皇后签到返回值:{} \n'.format(result.content))
|
||||
logger.info('皇后签到返回值:{} \n'.format(result.content.decode('utf-8')))
|
||||
href_sign_in = self.parse(res_check, '//a[@href="/plugin_sign-in.php?cmd=show-log"]')
|
||||
if len(href_sign_in) < 1:
|
||||
return CommonResponse.error(
|
||||
status=StatusCodeEnum.FAILED_SIGN_IN,
|
||||
data=result.json()
|
||||
)
|
||||
return CommonResponse.success(
|
||||
status=StatusCodeEnum.OK,
|
||||
data=result.json()
|
||||
@@ -950,11 +969,12 @@ class PtSpider:
|
||||
return result
|
||||
if 'open.cd' in site.url:
|
||||
result = self.sign_in_opencd(my_site=my_site)
|
||||
logger.info('皇后签到结果:{}'.format(result.to_dict()))
|
||||
if result.code == StatusCodeEnum.OK.code:
|
||||
res_json = result.data
|
||||
if res_json.get('state') == 'success':
|
||||
signin_today.sign_in_today = True
|
||||
data = res_json.get('data')
|
||||
data = res_json.get('msg')
|
||||
message = "签到成功,您已连续签到{}天,本次增加魔力:{}。".format(
|
||||
data.get('signindays'),
|
||||
data.get('integral'),
|
||||
@@ -1592,8 +1612,8 @@ class PtSpider:
|
||||
).replace('_Name', '').strip()
|
||||
if 'city' in site.url:
|
||||
my_level = my_level_1.strip()
|
||||
elif 'u2' in site.url:
|
||||
my_level = ''.join(re.findall(r'/(.*).{4}', my_level_1)).title()
|
||||
# elif 'u2' in site.url:
|
||||
# my_level = ''.join(re.findall(r'/(.*).{4}', my_level_1)).title()
|
||||
else:
|
||||
my_level = re.sub(u"([^\u0041-\u005a\u0061-\u007a])", "", my_level_1)
|
||||
logger.info('用户等级:{}-{}'.format(my_level_1, my_level))
|
||||
|
||||
@@ -3574,7 +3574,7 @@
|
||||
{
|
||||
"id": 54,
|
||||
"created_at": "2022-08-27 18:24:32.917000",
|
||||
"updated_at": "2022-11-18 13:58:53.685952",
|
||||
"updated_at": "2022-11-20 22:35:59.512639",
|
||||
"name": "OpenCD",
|
||||
"url": "https://www.open.cd/",
|
||||
"logo": "https://www.open.cd/favicon.ico",
|
||||
@@ -3633,7 +3633,7 @@
|
||||
"my_sp_rule": "//font[@class=\"color_bonus\"]/following-sibling::text()[1]",
|
||||
"hour_sp_rule": "//div[contains(text(),\"每小时能获取\")]/text()[1]",
|
||||
"my_bonus_rule": "//font[@class=\"color_bonus\" and contains(text(),\"积分\")]/following-sibling::text()[1]",
|
||||
"my_level_rule": "//span[@class=\"medium\"]/span[@class=\"nowrap\"]/a[contains(@class,\"_Name\")]/@class",
|
||||
"my_level_rule": "//div/span[@class=\"nowrap\"]/a[contains(@class,\"_Name\")]/@class",
|
||||
"my_hr_rule": "//tr[14]/td[2]/a/text()",
|
||||
"leech_rule": "//img[@class=\"arrowdown\"]/following-sibling::text()[1]",
|
||||
"seed_rule": "//img[@class=\"arrowup\"]/following-sibling::text()[1]",
|
||||
|
||||
Reference in New Issue
Block a user