Python เก่งมากในการจัดการการเรียก API ในบทความนี้ เราจะมาดูกันว่าเราจะจัดการกับการเรียก API สำหรับอัตราแลกเปลี่ยนสกุลเงินแบบเรียลไทม์ได้อย่างไรเช่นเดียวกับในอดีต
การใช้ forex-python
โมดูลนี้เป็นวิธีที่ตรงที่สุดในการรับอัตราการแปลงสกุลเงิน มีฟังก์ชันและพารามิเตอร์ที่สามารถป้อนข้อมูลสำหรับรหัสสกุลเงินที่ต้องการและให้ผลลัพธ์สำหรับการแปลง ตัวอย่างด้านล่างแสดงอัตราการแปลงสด
ตัวอย่าง
from forex_python.converter import CurrencyRates c = CurrencyRates() print(c.get_rate('USD', 'GBP'))
ผลลัพธ์
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
0.7357387755
อัตราสกุลเงินในอดีต
เราเพิ่มอ็อบเจ็กต์ datetime จากโมดูล datetime ให้กับตัวอย่างด้านบน และนั่นทำให้เราได้อัตราแลกเปลี่ยนสกุลเงิน ณ เวลาและวันที่ที่ระบุ
ตัวอย่าง
from forex_python.converter import CurrencyRates import datetime c = CurrencyRates() dt = datetime.datetime(2020, 3, 27, 11, 21, 13, 114505) print(c.get_rate('USD', 'INR', dt))
ผลลัพธ์
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
75.4937596793
การใช้เว็บ API
มี API มากมายที่ให้อัตราสกุลเงินแก่เราโดยการโทรโดยใช้คีย์ API และรับผลลัพธ์กลับเป็น JSON เราสามารถขยายโค้ดเพิ่มเติมเพื่อแปลง JSON เป็นรายการและจัดรูปแบบข้อมูลได้หากต้องการ
ตัวอย่าง
import requests # Where USD is the base currency you want to use url = 'https://v6.exchangerate-api.com/v6/336ccxxxxxxxxx8e74eac/latest/USD' # Making our request response = requests.get(url) data = response.json() # Your JSON object print(data)
ผลลัพธ์
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
{'result': 'success', 'documentation': 'https://www.exchangerate-api.com/docs', 'terms_of_use': 'https://www.exchangerate-api.com/terms', 'time_last_update_unix': 1610323201, 'time_last_update_utc': 'Mon, 11 Jan 2021 00:00:01 +0000', 'time_next_update_unix': 1610409616, 'time_next_update_utc': 'Tue, 12 Jan 2021 00:00:16 +0000', 'base_code': 'USD', 'conversion_rates': {'USD': 1, 'AED': 3.6725, ………., 'XOF': 536.3826, 'XPF': 97.579, 'YER': 250.1264, 'ZAR': 15.2899, 'ZMW': 21.1561}}