2026年2月19日星期四

New International Taishan Network Automatic Check-in Script Analysis and Summary。

New Content Summary: This script automates the International Taishan Network login and check-in process. It uses requests.Session() to manage cookies and headers, sending GET requests to login and check-in APIs. The main functions handle session initialization, user login with credentials, and sign-in execution, reporting success or failure.

1.购买服务器

阿里云:

服务器购买地址

https://t.aliyun.com/U/G61mcO

若失效,可用地址

https://www.aliyun.com/benefit?source=5176.29345612&userCode=49hts92d

腾讯云:

https://curl.qcloud.com/wJpWmSfU

若失效,可用地址

https://cloud.tencent.com/act/cps/redirect?redirect=2446&cps_key=ad201ee2ef3b771157f72ee5464b1fea&from=console

华为云

https://activity.huaweicloud.com/cps.html?fromacct=64b5cf7cc11b4840bb4ed2ea0b2f4468&utm_source=V1g3MDY4NTY=&utm_medium=cps&utm_campaign=201905

2.部署教程

2024年最新青龙面板跑脚本教程(一)持续更新中

3.代码如下

import requestsimport jsonfrom datetime import datetime# 配置区 - 请替换为你的实际信息CONFIG = {    "username""你的国际台山网账号",    # 手机号/用户名    "password""你的国际台山网密码",    # 登录密码    # 请求头:模拟浏览器,避免被反爬    "headers": {        "User-Agent""Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36",        "Referer""http://www.taishan.ccoo.cn/",        "Accept""text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8",        "Upgrade-Insecure-Requests""1"    }}# 核心接口地址(抓包确认的真实接口)API_URLS = {    "login""http://www.taishan.ccoo.cn/index.php?m=user&c=login&a=dosubmit",  # 登录接口    "sign""http://www.taishan.ccoo.cn/index.php?m=user&c=score&a=sign"       # 签到接口}def init_session():    """    初始化请求会话    作用:创建带Cookie维护的Session,预加载网站基础Cookie    """    session = requests.Session()    session.headers.update(CONFIG["headers"])    # 先访问首页,获取网站初始化Cookie(避免登录被拦截)    try:        # 关闭SSL验证(部分老网站证书可能有问题)        session.get("http://www.taishan.ccoo.cn/", verify=False, timeout=15)        print(f"【{datetime.now()}】会话初始化成功")        return session    except Exception as e:        print(f"【{datetime.now()}】会话初始化失败:{str(e)}")        return Nonedef user_login(session):    """    国际台山网登录函数    参数:初始化后的session对象    返回:登录成功返回session,失败返回None    """    if not session:        return None
    # 构造登录参数(CCOO平台标准登录参数)    login_params = {        "username": CONFIG["username"],        "password": CONFIG["password"],        "ajax""1"  # 标识为AJAX登录请求    }
    try:        # 发送登录请求(该网站登录为GET请求)        response = session.get(            url=API_URLS["login"],            params=login_params,            verify=False,            timeout=15        )        # 解析登录响应(该网站返回JSON格式)        result = response.json()        if result.get("error") == 0:            print(f"【{datetime.now()}】登录成功!{result.get('msg''登录成功')}")            return session        else:            print(f"【{datetime.now()}】登录失败:{result.get('msg''账号或密码错误')}")            return None    except json.JSONDecodeError:        print(f"【{datetime.now()}】登录响应解析失败,响应内容:{response.text}")        return None    except Exception as e:        print(f"【{datetime.now()}】登录请求异常:{str(e)}")        return Nonedef do_sign(session):    """    执行签到操作    参数:登录成功后的session对象    返回:签到成功返回True,失败返回False    """    if not session:        print(f"【{datetime.now()}】未完成登录,无法签到")        return False
    try:        # 发送签到请求(该网站签到为GET请求)        sign_response = session.get(            url=API_URLS["sign"],            verify=False,            timeout=15        )        # 解析签到结果(该网站签到返回HTML/JSON混合,需适配)        sign_text = sign_response.text.strip()        if "签到成功" in sign_text or "今日已签到" in sign_text or "积分" in sign_text:            print(f"【{datetime.now()}】签到操作完成!结果:{sign_text[:100]}")  # 截取前100字符避免输出过长            return True        else:            print(f"【{datetime.now()}】签到失败,响应内容:{sign_text[:100]}")            return False    except Exception as e:        print(f"【{datetime.now()}】签到请求异常:{str(e)}")        return Falseif __name__ == "__main__":    """脚本主入口:串联初始化→登录→签到流程"""    print("===== 国际台山网自动签到脚本 =====")    # 1. 初始化会话    session = init_session()    if not session:        exit(1)    # 2. 账号登录    login_session = user_login(session)    # 3. 执行签到    if login_session:        do_sign(login_session)    print("===== 脚本执行结束 =====")
解析

该脚本是针对国际台山网定制的自动签到工具,核心作用是替代人工完成该网站的 "登录→签到" 全流程:无需手动打开网页、输入账号密码登录,也无需手动查找并点击签到按钮,脚本会自动模拟浏览器的请求行为,完成身份验证后执行签到操作,最终反馈签到结果(成功 / 失败 / 已签到)。

主要方法

  • init_session()方法:

  • 核心作用是初始化一个能维护登录状态的请求会话。首先创建requests.Session()对象,该对象的核心优势是能自动保存和携带 Cookie,确保后续登录、签到请求的身份连续性;接着为会话统一设置模拟真实浏览器的请求头,避免被网站识别为爬虫;最后主动访问国际台山网首页,获取网站初始化的基础 Cookie(老网站常依赖这些 Cookie 做访问验证),同时关闭 SSL 验证(解决部分老网站证书无效导致的请求失败问题)。如果初始化过程中出现网络超时、连接失败等问题,会输出明确的错误提示并返回 None。

  • user_login(session)方法:

  • 作用是完成国际台山网的账号登录验证。该方法接收初始化后的会话对象作为参数,首先校验会话是否有效,无效则直接返回 None;接着构造 CCOO 平台标准的登录参数(包含账号、密码、AJAX 请求标识),并向登录接口发送 GET 请求(该网站登录接口为 GET 而非常见的 POST);请求完成后解析接口返回的 JSON 响应,通过error字段判断登录状态:error=0代表登录成功,此时会话会自动保存登录 Cookie,同时输出成功提示;若error≠0则输出具体的失败原因(如账号密码错误);针对 JSON 解析失败、请求超时等异常,也会针对性输出错误信息,保证脚本的健壮性。

  • do_sign(session)方法:

  • 作用是执行实际的签到操作。该方法接收登录成功后的会话对象作为参数,首先校验登录状态,未登录则提示并返回 False;接着向签到接口发送 GET 请求(该网站签到接口为 GET 请求,无额外参数,仅依赖登录 Cookie 验证身份);由于该网站签到响应为 HTML/JSON 混合格式,脚本通过关键词("签到成功""今日已签到""积分")判断签到结果,避免因格式不标准导致解析失败;最后输出签到结果(成功 / 失败),并返回布尔值标识操作状态,同时捕获所有请求异常,保证脚本不会因接口响应异常中断。

  • 主入口(__main__):

  • 作为脚本的启动入口,核心作用是按 "初始化会话→账号登录→执行签到" 的逻辑有序串联所有方法。首先输出脚本启动提示,然后调用init_session()初始化会话,若初始化失败则直接退出脚本;会话初始化成功后调用user_login()完成登录;登录成功后再调用do_sign()执行签到;最后输出脚本执行结束的提示,整体流程清晰,便于理解和后续修改。


注意

本文部分变量已做脱敏处理,仅用于测试和学习研究,禁止用于商业用途,不能保证其合法性,准确性,完整性和有效性,请根据情况自行判断。技术层面需要提供帮助,可以通过打赏的方式进行探讨。


历史脚本txt文件获取>>
服务器搭建,人工服务咨询>>

没有评论:

发表评论

Weidian Reading Auto-Sign Script : Setup Guide and Code

This script automates daily sign-in for Weidian Reading. It includes server purchase links (Alibaba, Tencent, Huawei Cloud), a deployment tu...