BOTNOI Classroom Google sheet,Api
สวัสดีครับ วันนี้ผมจะมา สอนวิธีการสร้าง API เชื่อมต่อกับ Google sheet นะครับผม
บทเรียนนี้ต้องเตรียมอะไรบ้าง ?
- เราต้อง account google สำหรับการใช้งาน
- เอกสาร google sheet
- Heroku account สำหรับการใช้งาน
- พื้นฐานเขียน API เบื้องต้น (Flask python
ขั้นตอนแรก…
สร้าง Key สำหรับการใช้งาน Google sheeet
เข้าไปสร้าง Key สำหรับการใช้งาน ที่ https://console.developers.google.com/cloud-resource-manager ก่อน
คลิก “สร้างโปรเจ็กต์” แล้วตั้งชื่อ ให้เรียบร้อย ในตัวอย่าง สร้างชื่อ “connect-google-sheet” แล้วก็คลิกที่ปุ่ม “สร้าง”
เมื่อสร้างเสร็จ จะแสดง โปรเจ็กต์ ล่าสุดที่เราสร้าง
จากนั้นไปที่ เมนู API และบริการ -> ข้อมูลรับรอง
คลิกที่ “สร้างข้อมูลรับรอง”
ให้เลือก “คีย์บัญชีบริการ”
ใส่ข้อมูลให้เรียบร้อย ชื่อบัญชีบริการให้ตั้งชื่อ เราก็ได้ครับได้จะได้จำได้ ในตัวอย่างผมสร้างชื่อ “user”
เมื่อใส่ข้อมูลครบให้คลิกที่ “สร้าง”
เราจะได้ไฟล์ json มี 1 ชุด( สำคัญมากต้องเก็บไว้ดีๆ ) ในไฟล์จะมีข้อมูลดังนี้
สิ่งที่เราต้องนำไปใช้ในนี้คือ ไฟล์ทั้งหมดและ client_email ที่นำไปใช้งาน
และที่สำคัญต้องเปิด การใช้งาน Google Drive API , Google Sheet API ด้วยนะครับ สำคัญมากๆ
เปิดใช้งาน Google Drive API , Google Sheet API
https://console.developers.google.com/
ไปที่เมนู API และบริการ -> หน้าแดชบอร์ด
คลิกที่ เปิดใช้งาน API และบริการ
จากนั้นให้ค้นหา Google Drive API , Google Sheet API แล้วกดเปิดใช้งานทั้ง 2 ตัว
ขั้นตอนถัดไป สร้าง Google Sheet
ทำการสร้าง Google Sheet
https://docs.google.com/spreadsheets/
และสร้างข้อมูลให้เรียบร้อยในเบื้องต้นก่อน
ขั้นตอนถัดไป ทำการเชื่อมต่อ ใบรับรอง
คลิกที่แชร์ Google sheet ที่เราสร้างเสร็จ กับ Client_email ที่ Json ที่สมัครในตอนแรก แล้วก็กด ส่ง เพื่อเชื่อมต่อ
ขั้นตอนการสร้าง Heroku account , Server App
ให้สมัครตามขั้นตอนนี้ครับ
วิธีสร้าง Account ทำตามนี้เลยครับ
วิธีสร้าง App สำหรับการ Deploy ขึ้น Heroku
ขั้นตอนสร้าง Flask กับ Google Sheet API
ลำดับแรกสร้างไฟล์มาใหม่ชื่อว่า app.py เพื่อทดสอบเชื่อมต่อและดึงข้อมูล Google Sheet มาก่อนตามโค้ดนี้ครับ
Lib ที่ต้องลงคือ
- pip install flask
- pip install geopy
- pip install gspread
- pip install oauth2client
- pip install pandas
เมื่อเรารันเสร็จจะแสดงข้อมูลที่ดึงออกมาจาก Google sheet ครับ
ดึงข้อมูลและจัดการข้อมูลด้วย Pandas จะแสดงเป็น Table ให้แบบนี้ครับ
ที่นี้ผมจะทำตัวอย่าง API ขึ้นมา 2 เส้นคือ เพิ่ม , ค้นหา
เส้นแรก ค้นหาเบอร์ จากชื่อพนักงาน
ถ้าดูจาก Google Sheet ก็จะมีรายชื่อที่เราค้นหา
เส้นที่ 2 สำหรับ เพิ่มข้อมูลเข้าไปใน Google Sheet
ผมทดสอบเพิ่มข้อมูล 2 คนเข้าไปชื่อ คุณกฤษ และ คุณยอด
จากนั้นก็ทำการ Deploy ขึ้น Heroku และทำการทดสอบเพิ่มนำไปใช้งานต่อกับ ChatBot ของ Botnoi ที่ให้บริการ
สำหรับการ Deploy ขึ้นให้ดูจากบทความนี้ครับ
จาก Deploy เสร็จแล้วมาทดสอบ API กันอีกที
https://api-wen.herokuapp.com/getEmployee?name=คุณพงษ์
และลองต่อกับ Chatbot ของ Botnoi ว่าสามารถใช้งานได้หรือใหม่
ตอนนี้ ChatBot เราก็สามารถ ต่อ API ที่ดึงข้อมูลจาก Google Sheet ได้แล้วครับ
สำหรับท่านใดที่ นำไปศึกษา เบื้องต้นสามารถ ดูที่นี้ได้เลยครับ
https://github.com/prisan6046/Ex-flask-google-sheet
และนี้ก็คือ ตัวอย่างเล็กๆน้อยๆ ในหลักสูตรที่ทาง Botnoi ได้จัดสอนขึ้นมา ในชั่วโมงเรียนจะเข้มข้นมากกว่านี้ครับอยากให้มาเรียน เพราะสอนจากการใช้งานจริง
หากใครสนใจอยากจะเรียนรู้เพิ่มเติม ทาง Botnoi เปิดคลาสสอน AI สอน Data science สามารถ join group Botnoi Classroom และสอบถามเรื่องการเรียน
ส่วนหากใครสนใจใช้บริการ Botnoi ในสร้างแชทบอท หรือให้คำปรึกษาเกี่ยวกับ AI & data science ติดต่อได้ผ่านเวป -> Botnoi และ FB Page Botnoi Consulting นะครับ