Python获取token数据的几种方式
import requests
from urllib import request
import re
# 一、从响应头中获取token
# 登录
url = 'http://xxx.nhf.cn/api/businessAccountInfo/v1.4/userLogin'
data = {"phoneNum": "13856290000", "password": "123456"}
response = requests.post(url, json=data)
print(response.headers['token'])
# 从登录接口的响应头中获取token值,存储在变量token中,方便后续接口请求的时候使用
token = response.headers['token']
# 查询订单列表
url = 'http://xxx.nhf.cn/api/fresh/v1.4/ordersList'
data = {"pageNo": 1, "pageSize": 10}
headers = {'token': token}
response = requests.post(url, json=data, headers=headers)
print(response.json())
# 二、从响应体中获取token
# 1.token存在于单层字典数据中
res = {
"code": 1000,
"message": "欢迎您,登录成功!",
"token": "ef135bce4284s45ab5967fdf22e81fa2"
}
token = res['token']
# 2.token存在于多层嵌套数据中
res = [{
"code": 1001,
"message": "用户名密码错误!",
"token": ""
},
{
"code": 1000,
"message": "欢迎您,登录成功!",
"token": "ef135bce4284s45ab5967fdf22e81fa2"
}
]
token = res[1]['token']
# 三、响应数据是html格式或raw文本格式,需要使用正则表达式提取数据
# 例如:获取百度首页标题
data = request.urlopen("http://www.baidu.com/").read().decode()
pat = r'<title>(.*?)</title>' # 提取中间数据
result = re.search(pat, data)
print(result)
Python获取token数据的几种方式的更多相关文章
- jQuery异步获取json数据的2种方式
jQuery异步获取json数据有2种方式,一个是$.getJSON方法,一个是$.ajax方法.本篇体验使用这2种方式异步获取json数据,然后追加到页面. 在根目录下创建data.json文件: ...
- python获取公网ip的几种方式
python获取公网ip的几种方式 转 https://blog.csdn.net/conquerwave/article/details/77666226 from urllib2 import u ...
- SparkStreaming获取kafka数据的两种方式:Receiver与Direct
简介: Spark-Streaming获取kafka数据的两种方式-Receiver与Direct的方式,可以简单理解成: Receiver方式是通过zookeeper来连接kafka队列, Dire ...
- PHP获取POST数据的三种方式
一.PHP获取POST数据的几种方法 方法1.最常见的方法是:$_POST['fieldname']; 说明:只能接收Content-Type: application/x-www-form-urle ...
- iOS 通过URL网络获取XML数据的两种方式
转载于:http://blog.csdn.net/crayondeng/article/details/8738768 下面简单介绍如何通过url获取xml的两种方式. 第一种方式相对简单,使用NSD ...
- 工具篇-Spark-Streaming获取kafka数据的两种方式(转载)
转载自:https://blog.csdn.net/weixin_41615494/article/details/7952173 一.基于Receiver的方式 原理 Receiver从Kafka中 ...
- Spark-Streaming获取kafka数据的两种方式:Receiver与Direct的方式
简单理解为:Receiver方式是通过zookeeper来连接kafka队列,Direct方式是直接连接到kafka的节点上获取数据 Receiver 使用Kafka的高层次Consumer API来 ...
- spark-streaming获取kafka数据的两种方式
简单理解为:Receiver方式是通过zookeeper来连接kafka队列,Direct方式是直接连接到kafka的节点上获取数据 一.Receiver方式: 使用kafka的高层次Consumer ...
- python 获取表单的三种方式
条件:urls.py文件中配置好url的访问路径.models.py文件中有Business表. 在views.py文件中实现的三种方式: from app01 improt models def b ...
- Python 获取环境变量的几种方式
第一种 import os os.environ.get('key_name') 第二种 import os os.getenv('key_name') 第三种 import os os.getenv ...
随机推荐
- [PKM] 家庭数据中心
1 NAS(Network Attached Storage/网络附属存储) 1.1 NAS的定义 NAS(Network Attached Storage:网络附属存储):具备资料存储功能的装置.按 ...
- [Linux]CentOS7搭建/配置:YUM仓库/源[本地源/Web源(Apache HTTP(D))/自建源仓库]
若想搞懂整个配置过程和原理,就按照章节(1 / 2)一步一步地来. 若想直接一步到位,不想花过多时间,尽快配好,就直接看附件章节. 什么是yum源? Yum(全称为 Yellow dog Update ...
- Redis key命名规范
Redis key命名规范 一.实现目标 简洁,高效,可维护 二.键值设计规约 1 Redis key 命名风格 [推荐]Redis key 命名需具有可读性以及可管理性,不该使用含义不清的 key ...
- classmethod和staticmethod装饰器
""" 两个装饰器 @classmethod 把一个对象绑定的方法,修改成为一个类方法 1.在方法中仍然可以引用类中的静态变量 2.可以不用实例化对象,就直接使用类名在外 ...
- IDA 特征码生成和搜索脚本
最近比较忙,就少写两句,直接附上源代码,其中的细节点就不再赘述,如有疑问,请留言. 一共就是实现了两个函数,一个用于搜索特征码 (SearchPattern),一个用于生成特征码 (GenerateF ...
- 一文吃透Elasticsearch
本文已经收录到Github仓库,该仓库包含计算机基础.Java基础.多线程.JVM.数据库.Redis.Spring.Mybatis.SpringMVC.SpringBoot.分布式.微服务.设计模式 ...
- MySQL InnoDB Architecture 简要介绍
MySQL InnoDB 存储引擎整体架构图: 一.内存存储结构 1.Buffer Pool buffer pool 是主内存中的一块儿存储区域,用于存储访问的表及索引数据.这样从内存中直接访问获取使 ...
- DRF的认证组件(源码分析)
DRF认证组件(源码分析) 1. 数据库建立用户表 在drf中也给我们提供了 认证组件 ,帮助我们快速实现认证相关的功能,例如: # models.py from django.db import m ...
- error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file o
error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file o ...
- pinia的使用
1. pinia和vuex的区别 pinia没有mutations,只有:state. getters. actions pinia分模块不需要modules(之前vuex分模块需要modules) ...