python接口自动化测试二:Cookic与session

# 时间戳,防重复
import time
title = '这是我的标题:%s'%str(int(time.time()))
print(title)
#转化成时间格式
t = time.strftime('%Y_%m_%d_%H_%M_%S')
print(t)

 

# 获取登录的cookies:loginCookies = r.cookies

# 把获取到的cookies传入请求:cookies=loginCookies

 

s = requests.session()  #只适用于网站是cookies这种,网站是token的没用            

# 可以理解为代码的微型浏览器,这样做的好处就是可以保存cookies,不用每次都去获取

 

Token请求:  

                                                                                                                

Cookies请求:

 

有保持登录的cookies:

 

s = requests.session()

# 加cookies

c = requests.cookies.RequestesCookieJar()

c.set('cookies', 'value',)

c.set('cookies', 'value')

#更新s上的cookies

s.cookies.update(c)    # 此时的cookies为登录成功后的cookies,直到下次更新cookies之前,s都将带着此次更新的cookies访问请求

 

# 时间戳,防重复
import time
title = '这是我的标题:%s'%str(int(time.time()))
print(title)

 

#转化成时间格式
t = time.strftime('%Y_%m_%d_%H_%M_%S')
print(t)

 

allow_redirects=False  不重定向

# 获取重定向后的地址
loc = r.headers

 

# 相对地址
host = 'https://i.cnblogs.com/'
url = host+'EditPosts.aspx?opt=1'

loc = r.headers['Location']
url1 = host+loc     # 拼接出重定向后的地址

 

# 追踪重定向过程
his = r.history
print(type(his))
print(his)
# 追踪第二个请求内容
r2 = his[1]
print(r2)

 

# 通过Response对象,来获取返回内容
print(r2.url)
print(r2.status_code)
print(r2.headers)
print(r2.test)

 

# session关联
import requests
# 登录禅道
url 'http://127.0.0.1/zentao/user-login-L3plbnRhby8=.html'
body {
        
'account''admin',
        'password''e10adc3949ba59abbe56e057f20f883e',
        'referer''/zentao/'
}
requests.post(url, data=body)
print(r.status_code)
print(r.headers)
print(r.content.decode('utf-8'))      # 防乱码

# 获取登录的cookies
loginCookies r.cookies
print('登录后的cookies=================')
print(loginCookies)     # jar格式
print('=========================')

# 新建一个产品
url 'http://127.0.0.1/zentao/product-create.html'
body {
        
'name''111',
        'code''222',
        'PO''admin',
        'QD''',
        'RD''',
        'type''normal',
        'desc''',
        'acl''open'
}
requests.post(url, cookies=loginCookies, data=body)     # 把获取到的cookies传入请求
print(r.status_code)
print(r.content.decode('utf-8'))

# session保持会话
import requests
# 只适用于网站是cookies这种,网站是token的没用
s = requests.session()  # 可以理解为代码的微型浏览器
# 登录禅道
url = 'http://127.0.0.1/zentao/user-login-L3plbnRhby8=.html'
body = {
       
'account': 'admin',
        'password': 'e10adc3949ba59abbe56e057f20f883e',
        'referer': '/zentao/'
}
r = s.post(url, data=body)
print(r.content.decode('utf-8'))      # 防乱码
# 新建一个产品
url = 'http://127.0.0.1/zentao/product-create.html'
body = {
       
'name': '111',
        'code': '222',
        'PO': 'admin',
        'QD': '',
        'RD': '',
        'type': 'normal',
        'desc': '',
        'acl': 'open'
}
r = s.post(url, cdata=body)
print(r.content.decode('utf-8'))
# session保持会话
import requests
# 只适用于网站是cookies这种,网站是token的没用
s = requests.session()  # 可以理解为代码的微型浏览器
# 登录禅道
url = 'http://127.0.0.1/zentao/user-login-L3plbnRhby8=.html'
body = {
       
'account': 'admin',
        'password': 'e10adc3949ba59abbe56e057f20f883e',
        'referer': '/zentao/'
}
r = s.post(url, data=body)
print(r.content.decode('utf-8'))      # 防乱码
# 新建一个产品
url = 'http://127.0.0.1/zentao/product-create.html'
body = {
       
'name': '111',
        'code': '222',      # 唯一
        'PO': 'admin',
        'QD': '',
        'RD': '',
        'type': 'normal',
        'desc': '',
        'acl': 'open'
}
r = s.post(url, cdata=body)
print(r.content.decode('utf-8'))

# 加cookies
c = requests.cookies.RequestesCookieJar()
# c.set('cookies': 'value')
# c.set('cookies': 'value')
# 更新s上的cookies
s.cookies.update(c)         # 此时的cookies为登录成功后的cookies
# 重定向
import requests
import urllib3
urllib3.disable_warnings()
# 相对地址
host = 'https://i.cnblogs.com/'
url = host+'EditPosts.aspx?opt=1'
# allow_redirects=False  不重定向
r = requests.get(url, verify=False, allow_redirects=False)
print(r.url)
print(r.status_code)


# 追踪重定向过程
his = r.history
print(type(his))
print(his)
# 追踪第二个请求内容
r2 = his[1]
print(r2)   # 返回的对象

# 通过Response对象,来获取返回内容
print(r2.url)
print(r2.status_code)
print(r2.headers)
print(r2.test)


# 获取重定向后的地址
loc = r.headers['Location']
print(loc)
url1 = host+loc     # 拼接出重定向后的地址
print(url1)

 

 

猜你喜欢

转载自www.cnblogs.com/zhongyehai/p/9141979.html