python

2017-10-17 82 views
-1

当我提出这个请求时,它会返回代码200,它应该。但是,如果我更改sizeLoadedVarient或colorLoadedID,那么结帐不应该返回true。python

第一个请求应该添加一个项目到购物车。第二个请求应该只返回200,如果有什么东西在车

目前,它输出

ATC ok 
checkout ok 

即使它应该返回false

import requests 

atcURL = "http://www.supremenewyork.com/shop/302805/add.json" 
sizeLoadedVarient = "40414" 
colorLoadedID = "19824" 
headers = user = {"User-Agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 10_2_1 like Mac OS X) AppleWebKit/602.4.6 (KHTML, like Gecko) Version/10.0 Mobile/14D27 Safari/602.1"} 

sessionProfile = requests.session() 

senddata = { 
'size' : sizeLoadedVarient, 
'style' : colorLoadedID, 
'qty' : 1 
} 

r = sessionProfile.post(atcURL,data=senddata, verify=False, headers=headers) 

if (r.status_code == 200): 
print("ATC ok") 
r2 = sessionProfile.get("http://www.supremenewyork.com/checkout")#.text 
#print(r2) 
if(r2.status_code == 200): 
    print('checkout ok') 
elif(r2.status_code != 200): 
    print('checkout not ok') 
else: 
    print('checkout not ok') 

elif (r.status_code != 200): 
print("Atc not ok") 
else: 
print('atc not ok') 
+1

目前还不清楚您想要达到什么目的以及您的代码与您的问题有何关系。 – erhesto

回答

1

requests自动跟随重定向;在这种情况下,您将被重定向回商店页面,该页面本身会返回200.您可以通过将allow_redirects=False传递给.get来禁用重定向,也可以验证r2.url仍然是检出路径。