1、安装requests

requests是python的第三方库,需要进行安装。安装之前最好先关闭fiddler

cmd(win+R快捷键)输入:pip install requests

其他命令:

  卸载:pip uninstall requests

  查看全部:pip list

  查看包:pip show requests

2、参照接口文档发送get请求

GET请求有两种情况,第一种是纯url地址没有问号,也没有问号后面的参数;第二种是带问号和参数的

get请求方法一(参数放在url后面,不推荐此方法):

# -*- coding:utf-8 -*- 

import requests

url = 'http://japi.juhe.cn/qqevaluate/qq?key=申请的key&qq=QQ号'

r = requests.get(url)
print(r.text)  

get请求方法二:将问号后面的参数单独拿出来

# -*- coding:utf-8 -*- 

import requests

url = 'http://japi.juhe.cn/qqevaluate/qq'
# 如果参数直接传的是中文的话,http传的时候是urlencode编码,requests会将中文参数转换为urlencode编码
par = {
'key': '申请的key',
'qq': 'qq号'
}
r = requests.get(url, params=par)
print(r.text)
print(r.json())

注意:r.text与r.json()的区别  

r.text返回的是文本,字符串

r.json(),josn解析返回的是字典,dict

如果get请求返回的是HTML页面,则只能使用r.text,不能使用r.json()

3、response返回的其他内容

  • r.status_code  # 响应状态码
  • r.content  # 以字节方式的响应体,会自动为你解码gzip和deflate压缩
  • r.text   # 字符串方式的响应体,会自动根据响应头部的字符编码进行解码
  • r.headers  # 以字典对象存储服务器响应头,字典键不区分大小写,若键不存在则返回None
  • r.json()   # Requests中内置的json解码器,json转换成python的字典了
  • r.url   # 获取请求的url
  • r.cookies   # 获取返回的cookie

  r.cookies单独获取到cookies,可以将cookies转字段再通过key方式去取值:value=dict(r.cookies)[key]

如果使用r.text获取的结果出现乱码的情况,则使用decode进行解码,如下:

r.content.decode('utf-8')  --->代替r.text解决乱码问题

python接口自动化之发送get(三)的更多相关文章

  1. python接口自动化之发送post(四)

    1.ssl问题 目前很多的请求使用的都是较为安全的https请求,https请求相对于http安全级别更高,需要验证ssl证书 写代码的时候有两种可以忽略ssl验证的方法 (1)import urll ...

  2. python接口自动化(十)--post请求四种传送正文方式(详解)

    简介 post请求我在python接口自动化(八)--发送post请求的接口(详解)已经讲过一部分了,主要是发送一些较长的数据,还有就是数据比较安全等.我们要知道post请求四种传送正文方式首先需要先 ...

  3. python接口自动化-Cookie_绕过验证码登录

    前言 有些登录的接口会有验证码,例如:短信验证码,图形验证码等,这种登录的验证码参数可以从后台获取(或者最直接的可查数据库) 获取不到也没关系,可以通过添加Cookie的方式绕过验证码 前面在“pyt ...

  4. python接口自动化3-自动发帖(session)

    前言 上一篇模拟登录博客园,但这只是第一步,一般登录后,还会有其它的操作,如发帖,评论等,这时候如何保持会话呢? (敲黑板!!!由于博客园最近登录机制变了,登录全部走cookie登录) 一.sessi ...

  5. python接口自动化(Cookie_绕过验证码登录)

     python接口自动化(Cookie_绕过验证码登录) 有些登录的接口会有验证码,例如:短信验证码,图形验证码等,这种登录的验证码参数可以从后台获取(或者最直接的可查数据库) 获取不到也没关系,可以 ...

  6. python接口自动化-参数化

    原文地址https://www.cnblogs.com/yoyoketang/p/6891710.html python接口自动化 -参数关联(一)https://www.cnblogs.com/11 ...

  7. python接口自动化 -参数关联(一)

    原文地址https://www.cnblogs.com/yoyoketang/p/6886610.html 原文地址https://www.cnblogs.com/yoyoketang/ 原文地址ht ...

  8. python接口自动化20-requests获取响应时间(elapsed)与超时(timeout)

    前言 requests发请求时,接口的响应时间,也是我们需要关注的一个点,如果响应时间太长,也是不合理的. 如果服务端没及时响应,也不能一直等着,可以设置一个timeout超时的时间 关于reques ...

  9. python接口自动化6-重定向(Location)

    前言 某屌丝男A鼓起勇气向女神B打电话表白,女神B是个心机婊觉得屌丝男A是好人,不想直接拒绝于是设置呼叫转移给闺蜜C了,最终屌丝男A和女神闺蜜C表白成功了,这种场景其实就是重定向了. 一.重定向 1. ...

随机推荐

  1. mongDb在node中的操作

    mongoDb 干嘛的:数据库,nosql(非关系型|缓存型) 场景:解决大规模数据集合多重数据种类 下载:https://www.mongodb.com/download-center 安装:htt ...

  2. Jenkins集成jacoco收集集成测试覆盖率

    Jenkins集成jacoco收集集成测试覆盖率 2020-02-28 目录 0 整体思路1 安装版本2 全局工具配置3 Jenkins创建JacocoIntegrateTestDemo项目  3.1 ...

  3. idea将普通项目转换为maven项目

    方式一 1.在项目根目录下,新建文件 pom.xml,并填写好内容. 2.在pom.xml文件上,右键 Add as Maven Project 或 在项目上,右键 Add Framework Sup ...

  4. Python爬虫连载9-JS加密之“盐”​、ajax请求

    一.JS加密之“盐”​ 1.salt属性“盐":多用于密码学,比如我们的银行卡是六位密码,但是实际上在银行的系统里,我们输入密码后,会给原始的密码添加若干字符,形成更加难以破解的密码.这个过 ...

  5. 通过shell模拟redis-trib.rb info的输出

    需求:模拟redis-trib.rb info ip:port输出的结果 如: [redis@lxd-vm3 ~]$ redis-trib.rb info 5.5.5.101:29001 /usr/l ...

  6. ClosedXML、DocumentFormat.OpenXml导出DataTable到Excel

    在很多系统中都用到导出,使用过多种导出方式,觉得ClosedXML插件的导出简单又方便. 并且ClosedXML.DocumentFormat.OpenXml都是MIT开源. 首先通过 Nuget 安 ...

  7. Jackson使用指南

    Jackson常用注解 序列化注解 @JsonAnyGetter 像普通属性一样序列化Map public class ExtendableBean { public String name; pri ...

  8. Ubuntu在当前用户目录下安装python 包

    对于tar.gz文件: tar -zxvf setuptools-19.6.tar.gz cd setuptools-19.6.tar.gz python3 setup.py build python ...

  9. <转载> 撤销 git reset 操作

    https://blog.csdn.net/mhlghy/article/details/84786497

  10. 7-8 矩阵A乘以B (15分)

    7-8 矩阵A乘以B (15分)   给定两个矩阵A和B,要求你计算它们的乘积矩阵AB.需要注意的是,只有规模匹配的矩阵才可以相乘.即若A有R​a​​行.C​a​​列,B有R​b​​行.C​b​​列, ...