วันนี้ได้ทดลองใช้งาน API ของ CoinMarketCap ไว้ดูตลาดเหรียญคริปโต เลยเกิดไอเดียทดลองเขียนดึงราคาเฉพาะเหรียญที่ต้องการดู แล้วนำมาแสดงผลบนหน้าเว็บ โดยใช้ streamlit ครับ
แนะนำ CoinMarketCap API
CoinMarketCap หรือ CMC มีบริการ API ให้ใช้งานแบบฟรี ครับเผื่อทดลองใช้งานแล้วถูกใจก็ค่อยใช้แบบจ่ายเงินภายหลังก็ได้
รายละเอียดฟังก์ชันของการแบบ Basic (Free access) เรียกใช้ได้ 4 บริการได้แก่
- /map
- / info
- / listing/latest
- / listing/quotes
ตัวอย่างเช่น
- Listings Historical แบบนี้ไม่ฟรี ครับ [https://coinmarketcap.com/api/documentation/v1/#operation/getV1CryptocurrencyQuotesHistorical]
- Listings Latest แบบนี้ใช้ฟรี ครับ [https://coinmarketcap.com/api/documentation/v1/#operation/getV1CryptocurrencyListingsNew]
1. ขั้นตอนแรกสมัครสมาชิกก่อนครับ
การเข้าใช้งาน API ให้เข้าไปที่ CoinMarketCap API หาปุ่ม sign up ให้เจอ แล้วทำตามขั้นตอน verify account ให้เรียบร้อย ครับ
เมื่อสมัครเรียบร้อย ก็ Login เข้ามาใช้งานที่แดชบอร์ด หน้าตาแบบนี้ จะมี API key ให้คัดลอกไปใช้งานครับ
2. ทดลอง API
ภายหลังจากได้ API Key มาแล้ว สามารถทดลองดูหน้าตาของ JSON ที่จะได้รับจาก CMC ผ่าน โปรแกรม postman ก็สะดวกดีครับ โดยสามารถทดลองได้จาก
- sandbox ไว้ทดลอง
— API key => b54bcf4d-1bca-4e8e-9a24-22ff2c3d462c
— URL => sandbox-api.coinmarketcap.com
- API domain ไว้ production
— API key => คัดลอกได้จากหน้า Dashboard
— URL => pro-api.coinmarketcap.com
3. เริ่ม Implement
หลังจากได้ทดลอง API เห็นหน้าตาของ JSON แล้ว ก็มาเขียนโปรแกรมต่อและทดลองแสดงผลง่ายๆ บนหน้าเว็บผ่าน streamlit ครับ
ตัวอย่าง Code :
https://github.com/excel007/streamlit101/blob/main/dashboard.py
ตัวอย่าง Demo :
https://share.streamlit.io/excel007/streamlit101/main/dashboard.py