BOTNOI Classroom Google sheet,Api

Prisan Pimprasan
botnoi-classroom
Published in
4 min readNov 12, 2019

สวัสดีครับ วันนี้ผมจะมา สอนวิธีการสร้าง API เชื่อมต่อกับ Google sheet นะครับผม

บทเรียนนี้ต้องเตรียมอะไรบ้าง ?

  1. เราต้อง account google สำหรับการใช้งาน
  2. เอกสาร google sheet
  3. Heroku account สำหรับการใช้งาน
  4. พื้นฐานเขียน 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 นะครับ

--

--