2017-05-14 39 views
0

正如標題所示,我需要一些幫助來設置一個腳本,它將使用python 2.7從API中提取數據。這個API的名稱爲YourMembership的平臺,文檔在這裏(https://api.yourmembership.com/reference/API_Getting_Started.pdf#view=Fit)。如何正確設置腳本以使用XML api終點還能夠接收和發送數據?

我的掛機是我總是使用預先存在的腳本與API進行通信,而不知道如何設置將從頭開始調用的腳本。第二次掛斷是我從來沒有用過XML與API進行通信,所以不知道如何發送消息來獲取數據。

在我的研究,我知道我必須使用與Python的「請求」庫,這是幾行我已經安裝至今,憑藉STATUS_CODE = 200

import requests 

url = 'https://api.yourmembership.com' 

api_key_public = 'xxx-xxxx-xxxx' 
api_key_private = 'xxx-xxx-xxxx' 

r = requests.get(url, api_key_private) 
print(r.status_code) 

我在做什麼錯誤?因爲我知道我的API密鑰沒有被輸入,如何通過我的腳本以XML格式提交命令?

預先感謝您。

編輯:

我目前這個腳本得到錯誤的工作,我的XML是誤形成的,而是在一個XML驗證所有檢查出來。我可能做錯了什麼?

import requests 

xml = """ 
<?xml version='1.0' encoding='utf-8'?> 
<YourMembership> 
    <Version>1.62</Version> 
    <ApiKey>xxx-xxx-xxx</ApiKey> 
    <CallID>001</CallID> 
    <SaPasscode>xxxxx</SaPasscode> 
    <Call Method =Sa.Events.All.GetIDs" > 
    </Call> 
</YourMembership> 


""" 

print(requests.post('https://api.yourmembership.com', data=xml).text) 

編輯 我需要頭?

+0

您是否遺漏了「版本」和「CallId」字段的值? – etemple1

+0

Hi @ etemple1我沒有故意遺漏他們,只是忘記了價值觀。將編輯它。 – user2573081

+0

對不起,我的問題不清楚。您提出請求時是否忽略了這些值?根據你關於標題的問題,爲這個特定的API提供包括標題的文檔嗎? – etemple1

回答

0

作爲@ etemple1建議,需要添加在標題中。