ระบบแจ้งเตือน ราคาทองคำ ผ่าน Line OA ด้วยภาษา Go

Aug. 31, 2024 · boychawin

วันนี้มาแจกโค้ดระบบแจ้งเตือน ราคาทองคำ เพื่อไปพัฒนาต่อ ผมเขียนด้วย go นะครับ คือระบบจะทำการตรวจสอบราคาทองคำจากเว็บไซต์ทองคำ และส่งข้อมูลผ่าน Line OA (Official Account) จุดประสงค์ทำมาเพื่อศึกษาเท่านั้น การนำข้อมูลจากเว็บไซต์อื่นมาใช้ ควรตรวจสอบเงื่อนไขการใช้งาน (Terms of Service) ของเว็บไซต์นั้นๆ ก่อน เพื่อให้แน่ใจว่าไม่ละเมิดลิขสิทธิ์

การทำงานของระบบ

  1. การดึงข้อมูล: ระบบใช้เครื่องมือ Colly ในการทำ Web Scraping เพื่อตรวจสอบราคาทองคำจากเว็บไซต์ทองคำ ข้อมูลที่ดึงมาจะรวมถึงราคาซื้อและขายของทองคำแท่ง (Gold Bar) และทองรูปพรรณ (Ornament) รวมถึงการเปลี่ยนแปลงของราคา

  2. การบันทึกข้อมูล: ข้อมูลที่ดึงมาได้จะถูกแปลงเป็นรูปแบบที่สามารถบันทึกลงฐานข้อมูลได้ ระบบจะทำการตรวจสอบว่าข้อมูลที่บันทึกมีการเปลี่ยนแปลงหรือไม่ หากมีการเปลี่ยนแปลง ระบบจะบันทึกข้อมูลใหม่ลงในฐานข้อมูล

  3. การแจ้งเตือน: ระบบจะทำการส่งข้อมูลราคาทองคำล่าสุดผ่าน Line OA ให้กับผู้ใช้ที่สมัครติดตาม โดยการส่งข้อมูลจะใช้ฟังก์ชัน SendLineFlexMessage เพื่อให้ข้อมูลถูกส่งไปยังผู้ใช้ทุกคนที่สมัครติดตาม

  4. การตั้งค่า Cron Job: ระบบใช้ Cron เพื่อทำการตรวจสอบและอัปเดตราคาทองคำทุก 30 วินาที

การติดตั้งและการใช้งาน

  1. การติดตั้ง: ต้องทำการติดตั้ง Dependencies ต่างๆ เช่น Fiber, Gorm, Colly, และ Cron โดยใช้คำสั่ง go mod tidy เพื่อให้โปรเจกต์สามารถใช้งานได้

  2. การตั้งค่า: ตั้งค่าในไฟล์ ที่ environments สำหรับการเชื่อมต่อกับฐานข้อมูลและการตั้งค่าต่างๆ ที่เกี่ยวข้องกับการทำงานของระบบ

  3. การเริ่มต้นใช้งาน: รันโปรแกรมโดยใช้คำสั่ง go run main.go ระบบจะเริ่มทำงานและส่งข้อมูลราคาทองคำไปยัง Line OA ตามเงื่อนไขที่ตั้งค่าไว้

สรุป

ระบบนี้เป็นจุดเริ่มต้น สำหรับผู้ที่สนใจพัฒนาระบบแจ้งเตือน Web Scraping โดยสามารถนำไปประยุกต์ใช้ได้งานส่วนตัวได้เลยนะครับ

Source code

Click download