PandoraNxet更新access token脚本

2023-12-15 22:48:37 3点赞 20收藏 4评论

张大妈怎么不能用markdown,为了看着舒服,

https://hi.wyhhome.top/archives/3BlkGLf1

PandoraNext 更新access token脚本

效果

  1. python脚本实现自动更新token

  2. 多用户

  3. 使用api,每个用户请求1次会消耗100

代码实现pandora_tokens.py

  1. 以下代码中的Base URL是你部署服务的地址,包括域名(IP)和端口

  2. proxy_api_prefix为pandoranext设置的api前缀

  3. 脚本名pandora_tokens.py,也可以自己命名,定时任务会用到

  4. 脚本中pandora_users.json存放用户的邮箱及密码

import requests, json

from urllib.parse import urlencode

def get_token(user, username, password):

# 登录api

login_url = 'Base URL/proxy_api_prefix/api/auth/login'

# 构建要发送的数据

data = {

'username': username,

'password': password

}

# 使用urlencode对数据进行编码

encoded_data = urlencode(data)

# 发送POST请求

response = requests.post(login_url, data=encoded_data, headers={'Content-Type': 'application/x-www-form-urlencoded'})

# 检查响应

if response.status_code == 200:

# 获取访问令牌

access_token = response.json().get('access_token')

print("Access token:", access_token)

else:

print("Failed to retrieve access token. Status code:", response.status_code)

# 读取tokens.json文件

file_path = '服务器tokens.json路径,对应容器里/data/tokens.json'

with open(file_path, 'r') as file:

tokens_data = json.load(file)

# 更新user的token值

tokens_data[user]['token'] = access_token

# 将更新后的数据保存回tokens.json文件

with open(file_path, 'w') as file:

json.dump(tokens_data, file, indent=4)

# 遍历pandora_users.json

# 读取tokens.json文件

user_path = '服务器pandora_users.json路径,存放登录信息'

with open(user_path, 'r') as file:

users_data = json.load(file)

for user, data in users_data.items():

get_token(user, data['username'], data['password'])

# Pandoranext热重载

requests.post('Base URL/proxy_api_prefix/api/setup/reload')

pandora_users.json文件模板

  1. user1/user2需要和pandoranext配置文件tokens.json里保持一致

  2. user可以根据自己需求增加

{

"user1":{

"username": "你的gpt账号",

"password": "你的gpt密码"

},

"user2":{

"username": "你的gpt账号",

"password": "你的gpt密码"

}

}

定时运行

  1. corntab执行pandora_tokens.py

  2. 宝塔或者1Panel面板上的定时任务,定时执行python3 pandora_tokens.py

  3. 用青龙面板执行task pandora_tokens.py

这样就能按时间自动更新access token了

PandoraNxet更新access token脚本
展开 收起
4评论

  • 精彩
  • 最新
  • 老哥,看不懂

    校验提示文案

    提交
    结合定时任务使用,设置好后定时执行就行

    校验提示文案

    提交
    收起所有回复
  • 没有半年以上github账号 没法用 😓

    校验提示文案

    提交
    哈哈哈,github自己也没想到自己能那么有用

    校验提示文案

    提交
    收起所有回复
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
20
扫一下,分享更方便,购买更轻松