[英]How do I extract data from Json_response to be used in python
我正在嘗試集成兩個 API
Python代碼;
import africastalking
import requests
import json
# Initialize SDK
username = "sandbox" # use 'sandbox' for development in the test environment
# use your sandbox app API key for development in the test environment
api_key = "auth_key"
africastalking.initialize(username, api_key)
# Initialize a service e.g. SMS
sms = africastalking.SMS
url = "https://nay-bokani.sparkmeter.cloud/api/v0/sms/outgoing"
payload = json.dumps({
"mark_delivered": False
})
headers = {
'Content-Type': 'application/json',
'Authentication-Token': 'auth_key'
}
response = requests.request("GET", url, headers=headers, data=payload)
# print()
json_response = response.json()
if json_response['status'] == 'success':
if json_response["messages"][0]["timestamp"] == max("timestamp"):
for s in range(len(json_response['messages'])):
response = sms.send(json_response['messages']['text'], [json_response['messages']['phone_number']])
print(response)
print(response.text)
json 響應
{
"error": null,
"messages": [
{
"id": "46186176-ba91-4072-a93e-0fc089dea750",
"phone_number": "+2348000000000",
"text": "You've just been credited with N10.00 worth of energy",
"timestamp": "2021-06-09T10:14:10.795818"
},
{
"id": "6709099c-22c8-4df5-88e1-24284d8ff61f",
"phone_number": "+2348111111111",
"text": "You've just been credited with N500.00 worth of energy",
"timestamp": "2021-06-09T10:32:11.885605"
}
],
"status": "success"
}
我需要能夠提取電話號碼和文本,並使用它使用短信 API 發送自動短信。 我嘗試使用最近的時間戳進行解析,但是當返回多個 json 數據時,這將是一個問題。
import json
#cannot use the real sms.send function so define a dummy one
def dummy_sms_send(txt, phone):
print(txt, phone)
json_response = """
{
"error": null,
"messages": [
{
"id": "46186176-ba91-4072-a93e-0fc089dea750",
"phone_number": "+2348000000000",
"text": "You've just been credited with N10.00 worth of energy",
"timestamp": "2021-06-09T10:14:10.795818"
},
{
"id": "6709099c-22c8-4df5-88e1-24284d8ff61f",
"phone_number": "+2348111111111",
"text": "You've just been credited with N500.00 worth of energy",
"timestamp": "2021-06-09T10:32:11.885605"
}
],
"status": "success"
}
"""
decoded_response = json.loads(json_response)
if decoded_response["status"] == "success":
for msg in decoded_response["messages"]:
dummy_sms_send(msg["text"], msg["phone_number"])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.