สถาบันข้อมูลขนาดใหญ่ (องค์การมหาชน)

Logo BDI For web

เชื่อมต่อข้อมูลการเงินจากธนาคารแห่งประเทศไทย (BOT) ด้วยโค้ดไพธอนและไมโครซอฟต์เอ็กเซล

Oct 18, 2021

ใครที่อยู่สายการเงินหรือสายเศรษฐศาสตร์อาจมีโอกาสได้ต้องใช้ข้อมูลด้านการเงินจากธนาคารแห่งประเทศไทย (Bank of Thailand: BOT) ไม่มากก็น้อย ไม่ว่าจะเป็นอัตราแลกเปลี่ยนเงินตราต่างประเทศ อัตราเงินเฟ้อ ฯลฯ ข้อมูลเหล่านี้มีการประกาศทางหน้าเว็บไซต์ให้เข้าถึงได้โดยสาธารณะ อย่างไรก็ดีนอกจากการประกาศให้ผู้ใช้ข้อมูลเข้าไปตรวจสอบข้อมูลด้วยตัวเองแล้ว ทางธนาคารแห่งประเทศไทยยังได้เปิดบริการ API สำหรับให้ผู้ใช้งานสามารถเขียนโค้ดเข้าไปดึงข้อมูลโดยตรงเพื่ออำนวยความสะดวกในการดึงข้อมูลไปใช้งานอีกด้วย

บทความนี้เราจะมาทดสอบการเรียกใช้ข้อมูลจากเว็บไซต์บริการข้อมูลของธนาคารแห่งประเทศไทย เพื่อนำมาแสดงผล ผ่านสองรูปแบบด้วยกัน ได้แก่ 1) การเขียนโค้ดภาษา Python และ 2) การดึงข้อมูลด้วยโปรแกรมไมโครซอฟต์เอ็กเซลผ่าน Power Query

สมัครใช้บริการ API ของธนาคารแห่งประเทศไทย

การให้บริการข้อมูลโดยธนาคารแห่งประเทศไทยมีการจัดการการเข้าถึงข้อมูลผ่านการจัดการผู้ใช้ ผู้ประสงค์ใช้งานจำเป็นต้องดำเนินการสมัครบัญชีผู้ใช้งาน (account) ก่อน ซึ่งสามารถสมัครใช้งานได้ฟรี โดยคลิกที่ปุ่ม create an account ที่มุมขวาบนของหน้าเว็บไซต์

สร้างบัญชีด้วยการคลิกที่ปุ่ม Create an account ด้านขวาบนของหน้าเว็บไซต์ แล้วกรอกข้อมูลให้เรียบร้อย
รูปที่ 1 การลงทะเบียนแอปพลิเคชันสำหรับเตรียมดึงข้อมุลผ่าน API

เมื่อสมัครบัญชีผู้ใช้เรียบร้อยแล้ว ก่อนที่จะสามารถใช้งาน API ได้ การเชื่อมต่อ API จะทำได้ผ่าน “แอปพลิเคชัน” ซึ่งจะเป็นตัวกลางของการเชื่อมต่อข้อมูล หลังจากลงทะเบียน โดยสามารถคลิกได้จากปุ่ม + Create new App หรือที่นี่ แล้วกรอกข้อมูล “แอปพลิเคชัน” ได้แก่ ชื่อแอป (คำอธิบาย และ OAuth Redirect URI ถ้าทราบ) หลังจากนั้น ระบบจะพาไปสู่หน้าต่างแจ้งว่าแอปพลิเคชันถูกลงทะเบียนเสร็จสมบูรณ์ เพื่อใช้งาน API ให้เลื่อนหน้าต่างลงมายังช่อง Client ID แล้ว คัดลอก key ดังกล่าวเก็บไว้

ผู้ใช้จำเป็นต้องสร้างแอปพลิเคชันเพื่อเตรียมความพร้อมก่อนใช้งาน API
รูปที่ 2 สร้างแอปพลิเคชันเพื่อเตรียมใช้งาน API

เลือกบริการ API

หลังจากดำเนินการลงทะเบียนแอปพลิเคชันแล้ว ผู้ใช้สามารถเลือกดูบริการ API จากทางธนาคารแห่งประเทศไทยได้จากแถบ API Products โดยในที่นี้เราได้เลือกบริการข้อมูล Exchange Rates 2.0.1 ซึ่งให้บริการอัตราแลกเปลี่ยนเงินบาทต่อเงินดอลลาร์สหรัฐฯ โดยผู้ใช้บริการจะต้องดำเนินการ Subscribe เพื่อแจ้งว่าจะให้แอปพลิเคชันไหน เชื่อมโยงกับบริการ API ดังกล่าว ในที่นี้เราเลือก Subscribe ตัวเลือกดังกล่าว (Exchange Rates 2.0.1) เข้ากับแอป BOT-GBDi ที่เราสร้างไว้ในขั้นตอนก่อนหน้า

เลือกบริการ API การเงินที่ต้องการ
รูปที่ 3 เชื่อมโยงบริการ API เข้ากับแอปพลิเคชันที่ลงทะเบียนไว้ผ่านการ subscription

เมื่อดำเนินการ Subscribe การใช้งาน API แล้ว ผู้ใช้สามารถเข้าไปพิจารณารายละเอียดบริการ API จากแถบด้านซ้ายมือ โดยในกรณีของบริการ Exchange Rates 2.0.1 นี้ ได้ให้บริการ 2 บริการย่อย ได้แก่ บริการค่าเฉลี่ยถ่วงน้ำหนักอัตราแลกเปลี่ยนเงินบาท/ดอลลาร์สหรัฐ (Weighted-average Interbank Exchange Rate – THB / USD 2.0.0) และบริการค่าเฉลี่ยอัตราแลกเปลี่ยนเงินบาท/เงินตราต่างประเทศอื่น (Average Exchange Rate – THB / Foreign Currency 2.0.1)

ผู้ใช้สามารถตรวจสอบรายละเอียดของ API ได้บนหน้าเว็บไซต์
รูปที่ 4 หน้าต่างแสดงรายละเอียด API พร้อมตัวอย่างโค้ดสำหรับนำไปใช้งาน

เขียนโค้ดไพธอนเพื่อดึงข้อมูลอัตราแลกเปลี่ยน

จากรูปที่ 4 ผู้ใช้สามารถนำโค้ดตัวอย่างมาใช้เพื่อดึงข้อมูลจากบริการ API ได้ โดยจำเป็นต้องระบุ apiKey ในรูปแบบของ headers ของ request โดย headers นี้เป็นตัวแปรประเภท dictionary ซึ่งเก็บคีย์สองตัว ได้แก่ ‘x-ibm-client-id’ และ ‘accept’ สำหรับ Weighted-average Interbank Exchange Rate – THB / USD 2.0.0 API ในส่วนของ GET /DAILY_REF_RATE/ ซึ่งใช้เป็นตัวอย่างในการดึงข้อมูลนี้นั้น นอกจากในเรื่องของการรับรองสิทธิการเข้าถึงข้อมูล (Authentication) แล้วนั้น ผู้ใช้จำเป็นต้องระบุพารามิเตอร์อีกสองตัวเพื่อให้ API ดึงข้อมูลออกมาแสดง ได้แก่ วันที่เริ่มต้น และวันที่สิ้นสุด ทั้งนี้ข้อจำกัดของ API ดังกล่าว ให้เรียกข้อมูลได้ไม่เกิน 31 วัน

headers = {
     'x-ibm-client-id': "bdc1fe35-f88c-42ee-b0e2-1c6d3881ad86",
     'accept': "application/json"
     }
 START_PERIOD = "2021-07-01"
 END_PERIOD   = "2021-07-05"

จากนั้นเราจะทำการใช้ไลบรารี่ http.client เพื่อเชื่อมโค้ดดังกล่าวเข้ากับบริการ API ของธนาคารแห่งประเทศไทย มาเก็บในตัวแปร รูปแบบข้อมูลที่ได้จะอยู่ในโครงสร้างแบบ JSON ซึ่งในที่นี้เราจะใช้ฟังก์ชัน eval เพื่อแปลงข้อมูลดังกล่าว และเลือกเฉพาะในส่วนของคีย์ที่เก็บข้อมูลสำคัญสำหรับใช้งาน ถือเป็นอันสิ้นสุดการเขียนโค้ดภาษาไพธอนเพื่อดึงข้อมูลอัตราแลกเปลี่ยนรายวันจากบริการ API ของธนาคารแห่งประเทศไทย ซึ่งผู้ใช้อาจต่อเติมโค้ดดังกล่าวเพื่อนำข้อมูลไปใช้ประโยชน์ต่อไป

 import http.client
  
 conn = http.client.HTTPSConnection("apigw1.bot.or.th")
  
  
 conn.request("GET", "/bot/public/Stat-ReferenceRate/v2/DAILY_REF_RATE/?start_period=" + START_PERIOD + "&end_period="+END_PERIOD, headers=headers)
  
 res = conn.getresponse()
 data = res.read()
  
 print(data.decode("utf-8"))
  
 print('nn')
 print(eval(data.decode("utf-8"))['result']['data']['data_detail']) 

ดึงข้อมูลอัตราแลกเปลี่ยนด้วยไมโครซอฟต์เอ็กเซล

สำหรับใครที่ไม่คุ้นชินกับการเขียนโค้ดเพื่อดึงข้อมูลนั้นไม่ต้องเหนื่อยใจไป ในบทความนี้เราขอเสนออีกหนึ่งวิธีเพื่อใช้ดึงข้อมูล API ด้วยโปรแกรมที่หลายคนอาจจะคุ้นชินมากกว่า นั่นก็คือไมโครซอฟต์เอ็กเซล โดยผู้เขียนได้ดัดแปลงจากบทความว่าด้วยเรื่องของ How To Parameterize Your Power Query

ขั้นตอนแรกคือการเชื่อมต่อเอ็กเซลของเราไปยังบริการ API ซึ่งอยู่บนเว็บไซต์ โดยสามารถทำได้จากการเลือกเมนู Data > From Other Sources > From Web

KeyValue
URL parthttps://apigw1.bot.or.th/bot/public/Stat-ReferenceRate/v2/DAILY_REF_RATE/
?start_period=
2021-06-08
&end_period=
2021-06-08
acceptapplication/json
x-ibm-client-id<client id จำเพาะกับแอปพลิเคชันซึ่งได้ลงทะเบียนไว้>
สรุปรายละเอียดที่จำเป็นสำหรับเรียกใช้ API

จากนั้นจะปรากฏหน้าต่างสำหรับกรอกรายละเอียดของหน้าเว็บ (API) ที่ต้องการจะเชื่อมต่อ โดยองค์ประกอบที่จำเป็นต้องระบุได้แก่ ตัว URL (ซึ่งรวมพารามิเตอร์ในส่วนของวันเริ่มและวันสุดท้าย) และในส่วนของ headers ซึ่งใช้จัดการการรับรองสิทธิในการเรียกใช้ API ในกรณีนี้ให้เลือกตัวเลือก Advanced และระบุข้อมูล URL และ headers ตามตัวอย่างในภาพ โดยอาจตัดแบ่งส่วนของ API ให้เป็นท่อนให้สามารถอ่านได้ง่าย และระบุพารามิเตอร์ในส่วนของวันเริ่มและวันสุดท้ายที่ต้องการดึงข้อมูลให้เรียบร้อยในรูปแบบ YYYY-MM-DD และสำหรับในส่วนของคีย์ x-ibm-client-id ให้ระบุ apiKey ที่ได้จากการลงทะเบียนแอปพลิเคชันบนหน้าเว็บของธนาคารแห่งประเทศไทย จากนั้นให้กดปุ่ม OK

ในกรณีที่ปรากฏหน้าต่าง Access Web content ขึ้นมาเพิ่มเติมสำหรับจัดการรูปแบบสิทธิ์ในการเข้าถึง ให้เลือกแถบ Anonymous และปรับระดับ (level) การเข้าถึงให้ครอบคุลมสำหรับ https://apigw1.bot.or.th/bot/public แล้วกดปุ่ม connect เพื่อดำเนินการในขั้นตอนถัดไป

ดึงข้อมูลจากบนเว็บไซต์ที่ให้บริการ API
รูปที่ 5 การดึงข้อมูลจากเว็บไซต์บนไมโครซอฟต์เอ็กเซล

จากนั้นโปรแกรมจะเปิดหน้าต่างของ Power Query (ตัวเดียวกับที่เราใช้เตรียมข้อมูลสำหรับทำแดชบอร์ดบน Power BI) ขึ้นมาสำหรับจัดรูปแบบข้อมูลที่ดึงมาได้ให้อยู่ในรูปตารางชุดข้อมูล ในขั้นตอนนี้อาจตรวจสอบการสิทธิ์ในการดึงข้อมูลให้สามารถทำได้ ให้แน่ใจว่า Permission การเข้าถึงหน้าข้อมูลถูกตั้งให้เป็น Anonymous โดยสามารถเข้าถึงหน้า Permission ได้จากเมนู Home > Data source settings จากนั้นเลือก Edit Permissions… เมื่อมั่นใจว่าเป็นสิทธิ์การเข้าถึงแบบ Anonymous แล้ว ให้ปิดหน้าต่างการจัดการ Data source settings

ตรวจสอบการตั้งค่า permission สำหรับการเข้าถึงชุดข้อมูลดังกล่าว
รูปที่ 6 ตรวจสอบ Permission การเข้าถึงข้อมูลบนเว็บไซต์

ข้อมูลที่ดึงมาจะอยู่ในลักษณะโครงสร้าง JSON โดยหน้าต่าง Power Query จะแสดงข้อมูลบนระดับชั้นบนสุดของไฟล์ JSON เมื่อต้องการเข้าถึงข้อมูลในชั้นโครงสร้างที่ลึกลงไปในโครงสร้างไฟล์ JSON ที่ดึงมา เราสามารถคลิกที่ Record > Record > List จากนั้นจึงดำเนินการขยายโครงสร้าง JSON ที่ได้ ให้กลายเป็นตารางโดยการคลิกที่เมนู Transform > To Table

ข้อมูลที่ถูกดึงผ่าน API จะอยู่ในรูป JSON ผู้ใช้จำเป็นต้องเจาะลงไปในระดับชั้นที่ต้องการ
รูปที่ 7 การเข้าถึงข้อมูล JSON ที่ระดับลึกลงไป

จากนั้นจะปรากฏหน้าต่างสำหรับตั้งค่าการสร้างตารางจากไฟล์ JSON ให้กดโอเค จากนั้นจึงคลิกที่ปุ่ม expand ที่มุมขวาบนของตาราง หรือที่เมนู Transform > Expand ทำการคลิกเลือกคอลัมน์ที่ต้องการ (ในที่นี้เลือกทุกคอลัมน์) และคลิกยกเลิก (ไม่เลือก) หน้าคำสั่ง Use original name as prefix จากนั้นตั้งชื่อ Query ตามต้องการ

แปลงค่าจาก JSON ให้อยู่ในรูปตาราง
รูปที่ 8 การปรับข้อมูลจาก JSON ให้อยู่ในรูปตาราง

ปิดโปรแกรม Power Query โดยการคลิกที่ปุ่มเมนู Home > Close & Load ตารางที่ได้จาก Power Query จะถูกสร้างบนชีตใหม่ของไฟล์เอ็กเซลโดยอัตโนมัติ หากตารางดังกล่าวไม่ถูกสร้างบนเวิร์กชีตของเอ็กเซล ผู้ใช้สามารถสร้างตารางบนไมโครซอฟต์เอ็กเซล โดยคลิกขวาที่ Query ที่สร้างขึ้นจาก Power Query > Load To… แล้วเลือกพื้นที่หรือรูปแบบที่ต้องการให้ข้อมูลจากการ Query ไปปรากฏให้เหมาะสม

ตารางที่เลือกจาก API จะถูกสร้างขึ้นบนเวิร์กชีตในไมโครซอฟต์เอ็กเซล
รูปที่ 9 การโหลด Query ที่สร้างขึ้นให้แสดงบนเวิร์กชีตของเอ็กเซล

ปรับพารามิเตอร์ API ผ่านเซลบนไมโครซอฟต์เอ็กเซล

จากหัวข้อก่อนหน้าจะเห็นว่าองค์ประกอบของ API ที่ใช้สำหรับ request ขอข้อมูลจากบริการ API ของธนาคารแห่งประเทศไทยนั้นประกอบด้วย URL, พารามิเตอร์ของ API (วันที่เริ่ม และวันสิ้นสุด) และรายละเอียด Credential หากผู้ใช้ต้องการปรับแก้รายละเอียดบางอย่าง เช่น วันที่เริ่ม หรือวันที่สิ้นสุด ผู้ใช้จำเป็นต้องเข้าไปแก้รายละเอียดการ Query ซึ่งหากผู้ใช้ขาดความคุ้นชินกับ Power Query ก็อาจทำได้ค่อนข้างลำบาก

เพื่อให้ผู้ใช้สามารถปรับแก้พารามิเตอร์หรือองค์ประกอบอื่นสำหรับการ request ขอข้อมูลจากบริการ API ได้สะดวกขึ้นนั้น เราอาจปรับแต่งการ Query ให้ใช้ข้อมูลจากเซลบนเวิร์กชีตของไมโครซอฟต์เอ็กเซลเป็นตัวแปรหนึ่งเพื่อนำไปเรียกใช้บน Power Query ตามขั้นตอนดังต่อไปนี้

สร้างตารางรวบรวมพารามิเตอร์ที่จะต้องใช้

ดำเนินการสร้างตารางรวบรวมพารามิเตอร์ที่จำเป็นสำหรับการเรียกใช้ API ในกรณีนี้ เราอาจสร้างพารามิเตอร์ต่างๆ ดังระบุในตาราง ทั้งนี้ค่าของ URL ที่จะใช้จริงอาจเป็นการคำนวณจากการนำค่า text ใน base_API มาต่อกับ Start และ End ซึ่งเป็นพารามิเตอรที่ใช้สำหรับปรับแต่งค่าที่จะรับกลับมาจากการเรียก API

IndexParameterValue
1base_APIhttps://apigw1.bot.or.th/bot/public/Stat-ReferenceRate/v2/DAILY_REF_RATE/
2Start2021-06-08
3End2021-07-01
4URLhttps://apigw1.bot.or.th/bot/public/Stat-ReferenceRate/v2/DAILY_REF_RATE/?start_period=2021-06-08&end_period=2021-06-08
5x-ibm-client-idbdc1fe35-f88c-42ee-b0e2-1c6d3881ad86
6acceptapplication/json
ตารางรวบรวมพารามิเตอร์ที่จำเป็นสำหรับเรียกใช้พารามิเตอร์

เพื่อให้การอ้างอิงตารางพารามิเตอร์นี้เป็นไปอย่างเป็นระบบ จำเป็นต้องตั้งค่าให้เอ็กเซลรับรู้ว่าค่าในเซลดังกล่าวเป็นตาราง โดยสามารถ ทำได้โดยเมนู Insert > Table (หรือกด Ctrl+T) แล้วเลือกขอบเขต (Range) ที่ครอบคลุมตารางพารามิเตอร์ดังกล่าว ทั้งนี้อาจตั้งชื่อตารางให้เหมาะสมจากเมนู Table Design > Table Name

เวิร์กชีตที่จะเก็บข้อมูลควรถูกแปลงให้อยู่ในตัวแปรตาราง เพื่อให้เรียกใช้ได้สะดวก
รูปที่ 10 การสร้างตารางจากข้อมูลบนเวิร์กชีตในไมโครซอฟต์เอ็กเซล

สร้าง Query เพื่อใช้เป็นฟังก์ชันบน Power Query สำหรับอ้างถึงค่าบนตารางพารามิเตอร์

สร้าง Blank Query ผ่านการเลือกเมนู Data > From Other Sources > Blank Query จากหน้าต่างโปรแกรม Power Query ผู้ใช้งานสามารถตั้งชื่อ Query ให้เหมาะสม ในที่นี้ใช้ชื่อ fParam จากนั้นจึงเข้าสู่โหมดการแก้ไขขั้นสูงผ่านเมนู Home > Advanced Editor หรือเมนู View > Advanced Editor หรืออาจคลิกขวาที่ Query ที่สร้างขึ้นในแถบ Queries ด้านซ้ายมือ แล้วเลือก Advanced Editor ได้เช่นเดียวกัน

การสร้าง Query ที่เป็นพารามิเตอร์ เป็นการสร้างฟังก์ชันบน Power Query เพื่อเรียกดึงข้อมูลจากเวิร์กชีต
รูปที่ 11 การสร้าง Query เพื่อใช้เป็นฟังก์ชันสำหรับดึงข้อมูลจากตารางพารามิเตอร์

บนหน้าต่าง Advanced Editor ให้แทนค่าโค้ดด้วยโค้ดด้านล่าง

 let Parameter=(TABLENAME,ROWNUMBER) =>
  
 let
                Source = Excel.CurrentWorkbook(){[Name=TABLENAME]}[Content],
                value = Source{ROWNUMBER-1}[Value]
 in
                value 

in Parameter

จากโค้ดข้างต้น Query ที่สร้างขึ้นจะมี 2 inputs ได้แก่ TABLENAME และ ROWNUMBER

  • TABLENAME: เป็นชื่อของตัวแปรที่เก็บค่าตารางพารามิเตอร์ ให้แทนที่ค่าดังกล่าวด้วยชื่อของตารางพารามิเตอร์ที่ตั้งชื่อไว้บนไมโครซอฟต์เอ็กเซล สำหรับกรณีของเราคือ “param_table”
  • ROWNUMBER: เป็นดัชนีแทนตัวเลขของแถวบนตารางพามิเตอร์สำหรับใช้ชี้ถึงพารามิเตอร์ที่ต้องการเรียกใช้ ในที่นี้เราใส่ ROWNUMBER-1 เนื่องจากดัชนีบน Power Query เริ่มนับจาก 0

เมื่อเสร็จเรียบร้อยผู้ใช้สามารถปิดหน้าต่าง Advanced Editor สำหรับ Query: fParam ได้

ปรับ Query เดิม (BOT_XRATE) ให้รับค่าพารามิเตอร์จาก fParam

เพื่อปรับรายละเอียดพารามิเตอร์ให้มีความยืดหยุ่นมากขึ้น เราจำเป็นต้องแปลงค่าพารามิเตอร์ต่าง ๆ ที่ถูกเรียกใช้ใน Query: BOT_XRATE จากเดิมที่ถูกกำหนดตายตัว ให้สามารถรับค่าจาก Query: fParam ที่สร้างขึ้นในขั้นตอนก่อนหน้าได้ โดยอาจทำได้จากโหมดการแก้ไขขั้นสูงสำหรับ Query: BOT_XRATE ซึ่งสามารถเข้าถึงได้โดยการเลือก Query ดังกล่าว แล้วกดเมนู Home > Advanced Editor หรือเมนู View > Advanced Editor หรืออาจคลิกขวาที่ตัว Query แล้วเลือก Advanced Editor

หน้าต่างการแก้ไขขั้นสูง (Advanced Editor) สำหรับใช้ปรับแต่งขั้นตอนการจัดรูปแบบข้อมูลในรายละเอียด
รูปที่ 12 หน้าต่างโหมดแก้ไขระดับสูงของ Query: BOT_XRATE

จากโค้ดบนหน้าต่าง Advanced Editor จะเห็นว่าแต่ละบรรทัดของโค้ดสอดคล้องกับแต่ละขั้นตอนที่แสดงผลในช่อง APPLIED STEPS ภายใต้แถบ Query Settings ด้านขวามือของโปรแกรม Power Query

ในที่นี้ให้ดำเนินการตามขั้นตอนดังต่อไปนี้

  1. เพิ่มโค้ดต่อไปนี้ในบรรทัดหลังคำว่า let และ ก่อนคำว่า Source (อย่าลืมเครื่องหมายจุลภาค , ท้ายแต่ละบรรทัด) โดยชื่อ fParam นั้นอ้างถึง Query: fParam ที่สร้างไว้ก่อนหน้า ในขณะที่ชื่อ param_table เป็นชื่อตารางพารามิเตอร์บนไมโครซอฟต์เอ็กเซล และตัวเลขด้านหลังแทนตัวเลขในคอลัมน์ index ซึ่งใช้อ้างถึงพารามิเตอร์ตัวนั้นๆ
 URL      = fParam("param_table", 4),
 ACCEPT   = fParam("param_table", 6),
 API_KEY  = fParam("param_table", 5), 
  1. ปรับบรรทัดที่ระบุ Source ซึ่งระบุคำสั่งที่ใช้ในการดึงข้อมูล โดยแทนที่ value เดิมด้วยชื่อตัวแปรในข้อ 1. หรืออาจคัดลอกโค้ดด้านล่างไปแทนที่บรรทัดดังกล่าวในหน้าต่าง Advanced Editor
  Source = Json.Document(Web.Contents(URL, [Headers=[accept=ACCEPT, #"x-ibm-client-id"=API_KEY]])), 
เปลี่ยนค่าในโค้ดเป็นชื่อตัวแปร (URL, API_KEY, ACCEPT) แทน
รูปที่ 13 ตัวอย่างการปรับแก้โค้ดเพื่อให้การ Query มีความยืดหยุ่นมากขึ้น

เมื่อดำเนินการเสร็จสิ้นขั้นตอนแล้ว สามารถปิดหน้าต่าง Power Query เพื่อกลับไปยังโปรแกรมไมโครซอฟต์เอ็กเซลได้ และเนื่องจากเราได้ตั้งค่าให้ Query: BOT_XRATE แสดงค่าเป็นตารางบนเวิร์กชีตไว้ในขั้นตอนก่อนหน้านี้แล้ว ข้อมูลจาก Query ดังกล่าวจะถูกแสดงยังจุดเดิมตามที่ได้ตั้งค่าไว้

ผู้ใช้สามารถทดสอบการเปลี่ยนค่าพารามิเตอร์ในตารางเป็นค่าอื่น เช่น เปลี่ยนวันเริ่มต้นในการดึงข้อมูล หลังจากเปลี่ยนค่าในเซลแล้ว สามารถอัปเดตการดึงข้อมูลด้วยการไปที่เมนู Data > Refresh All ข้อมูลในตารางข้อมูลที่ดึงมาจากเว็บไซต์จะถูกเปลี่ยนไปเป็นค่าอื่นตามพารามิเตอร์ที่ระบุไว้ในตารางพารามิเตอร์

สามารถตรวจสอบการเรียกใช้ API บนเวิร์กชีตที่สร้างขึ้นผ่านปุ่ม Refresh บนเมนู Data
รูปที่ 14 สามารถปรับพารามิเตอร์แล้วกดปุ่ม Refresh All เพื่ออัปเดตข้อมูล

อินเตอร์เน็ตเป็นสื่อสำคัญที่ช่วยให้เราสามารถเข้าถึงข้อมูลได้หลากหลายและรวดเร็วมากขึ้น ข้อมูลเหล่านี้มีอยู่หลากหลายรูปแบบขึ้นกับลักษณะการนำไปใช้งาน ความหลากหลายเหล่านี้ผลักดันให้เกิดการพัฒนาเครื่องมือต่าง ๆ ที่จะช่วยให้สามารถนำข้อมูลเหล่านี้ไปใช้ประโยชน์ได้ง่ายขึ้น การเรียนรู้วิธีการใช้เครื่องมือเหล่านี้จึงจะช่วยให้เราใช้ประโยชน์จากข้อมูลได้อย่างมีประสิทธิภาพ และตอบโจทย์การใช้งานที่หลากหลาย รวมทั้งช่วยให้สามารถผลักกระบวนการทำงานเดิมที่ซ้ำซากให้เป็นหน้าที่ของเครื่องมือด้านดิจิทัล ซึ่งจะทำให้เราได้ลงแรงและเวลาเพื่อทำงานในส่วนอื่น เช่น งานที่ต้องอาศัยความคิดสร้างสรรค์ ซึ่งไม่สามารถถูกแทนที่ด้วยเครื่องมือเหล่านี้ต่อไป

สรุปเนื้อหาโดย พีรดล สามะศิริ
ตรวจทานโดย ดวงใจ จิตคงชื่น

Peeradon Samasiri, PhD

Senior Project Manager & Data Scientist at Big Data Institute (Public Organization), BDI

© Big Data Institute | Privacy Notice