Json格式、Header、Cookie、代理IP、重定向
1、Json格式
1、引入Requests库、引入Json库
import requests
import json
2、发起POST请求(参数为Json格式)
# 参数
data = {
'userid':'admin',
'pwd':'123456',
'date':'20180725'
}
res = requests.post(url='http://httpbin.org/post',data=json.dumps(data))
3、脚本代码:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
Json格式
"""
# 引入Requests库
import requests
# 引入Json库
import json
# 参数
data = {
'userid':'admin',
'pwd':'123456',
'date':'20180725'
}
# 发起POST请求
res = requests.post(url='http://httpbin.org/post',data=json.dumps(data))
# 输出状态码
print(res.status_code)
# 输出响应头信息
print(res.headers)
# 输出响应内容为json格式
print(res.json())
4、运行结果:
输出响应内容为Json格式。
2、Header
1、引入Requests库
import requests
2、发起POST请求
# 请求头
headers = {
'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36'
}
# 参数
data = {
'userid':'admin',
'pwd':'123456',
'date':'20180725'
}
# 发起POST请求
res = requests.post(url='http://httpbin.org/post',json=data,headers=headers)
3、脚本代码:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
Header
"""
# 引入Requests库
import requests
# 请求头
headers = {
'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36'
}
# 参数
data = {
'userid':'admin',
'pwd':'123456',
'date':'20180725'
}
# 发起POST请求
res = requests.post(url='http://httpbin.org/post',json=data,headers=headers)
# 输出请求头信息
print(res.request.headers)
# 输出响应头信息
print(res.headers)
4、运行结果:
输出请求与响应头信息。
3、Cookie
1、引入Requests库
import requests
2、设置Cookie
cookies = dict(login='true')
3、发起GET请求
res = requests.get(url='http://httpbin.org/cookies', cookies=cookies)
4、脚本代码:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
Cookie
"""
# 引入Requests库
import requests
# 设置Cookie
cookies = dict(login='true')
# 发起GET请求
res = requests.get(url='http://httpbin.org/cookies', cookies=cookies)
# 输出请求头信息
print(res.request.headers)
5、运行结果:
输出请求头信息。
4、代理IP
1、引入Requests库
import requests
2、设置代理IP(如118.190.95.35:9001、125.122.21.114:808)
proxies = {
'http':'118.190.95.35:9001',
'https':'125.122.21.114:808',
}
3、发起GET请求
res = requests.get(url='https://www.baidu.com/', proxies=proxies)
4、脚本代码:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
代理IP
"""
# 引入Requests库
import requests
# 设置代理IP
proxies = {
'http':'118.190.95.35:9001',
'https':'125.122.21.114:808',
}
# 发起GET请求
res = requests.get(url='https://www.baidu.com/', proxies=proxies)
# 修改编码为utf-8
res.encoding='utf-8'
# 输出响应内容
print(res.text)
5、运行结果:
5、重定向
本小节接口请求链接使用moco生成。
如图所示:需要用到moco包和Json配置文件(已经配置完成)。
启动moco服务:
命令行进入moco包所在目录。
输入 java -jar moco-runner-0.12.0-standalone.jar http -p 8083 -c Redirect.json
如图所示:moco服务开启,就可以使用接口请求链接了。
1、引入Requests库
import requests
2、发起GET请求(allow_redirects为False禁用重定向,True开启重定向)
res = requests.get(url='http://localhost:8083/redirect', allow_redirects=False)
3、脚本代码:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
重定向
"""
# 引入Requests库
import requests
# 发起GET请求
# allow_redirects为False禁用重定向,True开启重定向
res = requests.get(url='http://localhost:8083/redirect', allow_redirects=False)
# 输出响应内容
print(res.url)
4、运行结果:
当allow_redirects为False(禁用重定向)
访问链接还是http://localhost:8083/redirect
当allow_redirects为True(开启重定向)
访问链接跳转为https://www.baidu.com/
本文分享自 AllTests软件测试 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!