You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从POST请求返回的JSON响应中提取accessToken值?

提取登录响应中的accessToken字段

嘿,我来帮你搞定这个accessToken提取的问题!其实只需要把返回的响应文本解析成Python字典,再逐层访问对应的键就能拿到目标值,下面是修改后的完整代码,关键部分我都标出来了:

import requests
import json
from fake_useragent import UserAgent

# Set Modules
ua = UserAgent()
url = 'site'

# Read TXT
accounts = 'accounts\\accounts.txt'
with open(accounts) as line:
    login = line.readline()
    line = login.split(",")
    cnt = 1
    email = line[0]
    password = line[1]

# Login
head = {
    '.......': '.........',
}
data = {
    ..........
}

test = requests.post(url, json=data, headers=head)  # 直接传json参数,无需手动调用json.dumps()

if test.status_code == 200:
    print('Logged!')
    # 将响应文本解析为Python字典
    response_json = test.json()
    
    # 提取外层的accessToken(对应你提供的JSON结构:data -> loginWithEmail -> accessToken)
    target_access_token = response_json['data']['loginWithEmail']['accessToken']
    print(f"提取到的accessToken: {target_access_token}")
    
    # 如果需要提取用户私有信息里的另一个accessToken,用下面这行
    # private_access_token = response_json['data']['loginWithEmail']['me']['private']['accessToken']
    # print(f"私有信息中的accessToken: {private_access_token}")
else:
    print('Error')

关键细节说明:

  • requests.post支持直接传入json参数,不用手动做序列化,这样代码更简洁也能避免格式错误;
  • test.json()方法会自动把响应的JSON文本转换成Python字典,让我们可以通过键路径直接取值;
  • 你的JSON响应里有两个accessToken字段,分别在loginWithEmail根节点和me.private子节点下,代码里我都给出了提取方式,你可以根据需求选择。

内容的提问来源于stack exchange,提问作者DonCorleone

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.11 07:41:33