2016-11-13 2 views
1

API에서 데이터를 다운로드하고 있지만 오류 401이 발생했습니다. 오류 401을 이해하지만 내 코드가 잘못되었음을 알지 못합니다.Python 요청 응답 401

import json 
import requests 
path='C:/Users/sharm_000/Desktop/Price Comparison/' 

cat=str('https://affiliate-api.flipkart.net/affiliate/api/swapnilsh5.json') 
r = requests.get(cat, auth=('swapnilsh5', '7018e1141bcd4ace9c3fe12277924035')) 
print (r) 

위의 코드는 중대하다 201 응답을 반환하지만

link='https://affiliate-api.flipkart.net/affiliate/1.0/feeds/swapnilsh5/category/j9e-abm-c54.json?expiresAt=1479062969473&sig=1ef27c056140e0ff7cac143670584e9d&inStock=1' 

r = requests.get(str(link), auth=('swapnilsh5', '7018e1141bcd4ace9c3fe12277924035')) 

print(r) 

이 반환 401 오류이 내가 알아낼 수 아니에요 내가 데이터 다운로드의 다음 단계로 갈 때 도전은 온다 , 위의 링크를 말림을 사용하여 실행할 때

curl -H "Fk-Affiliate-Id:swapnilsh5" -H "Fk-Affiliate-Token:7018e1141bcd4ace9c3fe12277924035" "https://affiliate-api.flipkart.net/affiliate/1.0/feeds/swapnilsh5/category/j9e-abm-c54.json?expiresAt=1479062969473&sig=1ef27c056140e0ff7cac143670584e9d&inStock=1" -o "C:\Users\sharm_000\Desktop\Price Comparison\a1c.json" 

말풍선 명령은 아주 잘 작동합니다.

어디서 잘못 가고 있는지, 그리고 파이썬에서 같은 작업을 수행하는 다른 방법이 무엇인지 제안 해주십시오.

미리 감사드립니다.

답변

0

연결하려는 API 끝점은 비표준 헤더를 사용합니다. 그래서 권위가 당신을 위해 작동하지 않습니다. 곱슬 머리를 사용할 때와 똑같이 사용자 정의 헤더로 전달해야합니다.

requests.get(str(link), 
    headers = { "Fk-Affiliate-Id" : 'swapnilsh5', 
       "Fk-Affiliate-Token": '7018e1141bcd4ace9c3fe12277924035'})