chh322 发表于 2024-4-22 11:08

青龙面板 夸克网盘多账户签到及系统通知推送

本帖最后由 chh322 于 2024-4-22 11:13 编辑

import requests
import json
import notify

def check_request_response(response):
    """检查请求是否成功,并返回响应数据或打印错误信息"""
    if not response.ok:
      print(f"请求失败,状态码: {response.status_code}")
      return None
    return response.json()

def quark_sign_in(cookie):
    state_url = "https://drive-m.quark.cn/1/clouddrive/capacity/growth/info?pr=ucpro&fr=pc&uc_param_str="
    headers = {'Cookie': cookie}
   
    # 获取签到状态
    state_response = requests.get(state_url, headers=headers)
    response_data = check_request_response(state_response)
    if not response_data:
      return False
   
    sign = response_data["data"]["cap_sign"]
   
    if sign["sign_daily"]:
      number = sign["sign_daily_reward"] / (1024 * 1024)
      progress = round(sign["sign_progress"] / sign["sign_target"] * 100, 2)
      message = f"今日已签到获取{number}MB,进度{progress}%"
      print(message)
      return message
   
    # 执行签到
    sign_url = "https://drive-m.quark.cn/1/clouddrive/capacity/growth/sign?pr=ucpro&fr=pc&uc_param_str="
    params = {"sign_cyclic": True}
    headers = {'Content-Type': 'application/json', 'Cookie': cookie}
    sign_response = requests.post(sign_url, headers=headers, json=params)
   
    data_response = check_request_response(sign_response)
    if not data_response:
      return None
   
    mb = data_response["data"]["sign_daily_reward"] / 2048
    print(json.dumps(data_response))
    return f"签到成功,获取到{mb}MB!"

def main():
    # 定义多个 cookie,每个 cookie 带有名称作为键
    cookies = {
      "cookie1": "",
                "cookie2": "",
                # 继续添加更多 cookie
    }

    # 定义用于存储签到结果的字典
    sign_results = {}

    # 循环遍历每个 cookie 并调用签到函数
    for name, cookie in cookies.items():
      print(f"正在签到 {name} ...")
      sign_message = quark_sign_in(cookie)
      if sign_message:
            sign_results = sign_message
      else:
            sign_results = "签到失败"
            notify.send("夸克盘签到异常", f"{name} 的签到失败!")
   
    # 输出所有账户的签到结果
    print("\n签到结果:")
    for name, message in sign_results.items():
      print(f"{name}: {message}")
   
    # 汇总所有签到信息
    summary_message = "\n".join()
   
    # 使用 notify.send 发送汇总信息通知
    notify.send("夸克盘签到汇总", summary_message)

if __name__ == "__main__":
    main()

chh322 发表于 2024-4-22 11:31

本帖最后由 chh322 于 2024-4-22 14:26 编辑

cenoser795 发表于 2024-4-22 11:27
感谢。
不过,
我前段时间刚买了夸克会员,

这个签到永久的 会员不冲突 还可以加成 会员才一年

获取夸克Cookie 教程如下:
需要在电脑浏览器打开夸克网盘,先不登录的情况下 按 F12 ,选择“网络”,如图所示:
扫码登录后,请选择”sort?pr=ucpro&fr=pc“名称文件,
并下滑找到”Cookie“所对应的值就是你的Cookie

kittylang 发表于 2024-7-19 17:44

本帖最后由 kittylang 于 2024-7-19 17:53 编辑

crazy1989 发表于 2024-7-19 17:42
有教程吗?不胜感激
https://as.js.cool/reference/quark/

如果要自己写,就参考前面那几行代码即可。接口是一样的,只是不支持cookie了,需要用url query传递登录信息

chh322 发表于 2024-4-22 11:14

laustar 发表于 2024-4-22 11:11
推送用的什么?

都可以 玩青龙知道

kittylang 发表于 2024-4-22 12:24

cenoser795 发表于 2024-4-22 12:18
谢谢!
请问,有抓夸克cookies的教程吗?
是在pc端抓还是在手机app上抓?

https://www.52pojie.cn/forum.php?mod=viewthread&tid=1904839&highlight=%BF%E4%BF%CB

都可以,可以看看这个

chh322 发表于 2024-4-22 14:25

cenoser795 发表于 2024-4-22 12:18
谢谢!
请问,有抓夸克cookies的教程吗?
是在pc端抓还是在手机app上抓?

获取夸克Cookie 教程如下:
需要在电脑浏览器打开夸克网盘,先不登录的情况下 按 F12 ,选择“网络”,如图所示:
扫码登录后,请选择”sort?pr=ucpro&fr=pc“名称文件,
并下滑找到”Cookie“所对应的值就是你的Cookie

laustar 发表于 2024-4-22 11:11

推送用的什么?

amex0372 发表于 2024-4-22 11:18

可以可以

cenoser795 发表于 2024-4-22 11:27

感谢。
不过,
我前段时间刚买了夸克会员,
6T,
159块钱{:1_907:}

lizh575 发表于 2024-4-22 11:59

感谢楼主分享

cenoser795 发表于 2024-4-22 12:18

chh322 发表于 2024-4-22 11:31
这个签到永久的 会员不冲突 还可以加成 会员才一年

谢谢!
请问,有抓夸克cookies的教程吗?
是在pc端抓还是在手机app上抓?

3320099 发表于 2024-4-22 13:22

变量是啥?cookie?
页: [1] 2 3 4 5 6
查看完整版本: 青龙面板 夸克网盘多账户签到及系统通知推送