สร้าง Telegram Bot แจ้งเตือนงานด้วย Python 60 บรรทัด
เรียนรู้วิธีสร้าง Telegram bot แจ้งเตือนงานใหม่จาก API ข้อมูล ATS สดๆ ด้วย Python เพียง 60 บรรทัด พร้อมดึงข้อมูลเงินเดือนและกรองตำแหน่งงาน

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง
- สร้าง Telegram bot แจ้งเตือนงานใหม่ด้วย Python เพียง 60 บรรทัด
- ดึงข้อมูลสดจาก HiringIndex API ที่ใช้ข้อมูลจาก applicant tracking systems
- กรองตำแหน่งงานและสถิติเงินเดือนตามเปอร์เซ็นไทล์จากข้อมูลจริง
กระดานประกาศงานทั่วไปมักจะล้าสมัยอย่างรวดเร็ว เนื่องจากจดหมายข่าวสรุปรายสัปดาห์มักจะส่งถึงมือคุณช้าเกินไปจนตำแหน่งงานที่น่าสนใจเปิดรับมานานเป็นเดือนแล้ว การสร้างบอทขนาดเล็กจึงเป็นทางออกที่ดีที่สุด บอท Telegram นี้จะทำหน้าที่ตื่นขึ้นมา ดึงข้อมูลจาก API สำหรับประกาศงานทั้งหมดในช่วงเจ็ดวันที่ผ่านมา และส่งรายการงานใหม่ๆ มาให้คุณโดยตรง
เราจะใช้งาน HiringIndex ซึ่งเป็นประกาศงานที่ดึงมาจากแคตตาล็อก API ที่ระบบติดตามผู้สมัคร (applicant tracking systems) เผยแพร่ ทำให้ทุกแถวข้อมูลมีลิงก์สมัครงานตรงจากนายจ้าง ไม่ใช่ลิงก์เปลี่ยนเส้นทางจากเว็บไซต์รวบรวมงานทั่วไป ข้อมูลตัวอย่างที่วัดสดในช่วงเวลา 2026-09-13 04:47–04:50 UTC แสดงให้เห็นโครงสร้างข้อมูลก่อนเริ่มเขียนโค้ดจริง

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง
ตัวกรองที่บอทใช้งานถูกออกแบบมาให้แคบตั้งใจ เพื่อให้ได้ประกาศงานประมาณ 9 ตำแหน่งต่อวัน ซึ่งเป็นปริมาณที่เหมาะสำหรับการอ่านยามเช้า ไม่ใช่ข้อมูลจำนวนมากจนเกินไป คุณสามารถขยายขอบเขตได้โดยการลบพารามิเตอร์ job_titles ออก
ในส่วนของข้อมูลเงินเดือนจะได้มาจาก endpoint /jobs/insights แยกตามสกุลเงิน โดยแต่ละเปอร์เซ็นไทล์ระบุจำนวนข้อมูลที่นำมาคำนวณ เช่น สำหรับข้อมูลชุดกว้าง มีประกาศเงินเดือนสกุล USD จำนวน 744 โพสต์ ให้ค่าเปอร์เซ็นไทล์ที่ 25 อยู่ที่ 115,000–150,000 ดอลลาร์ และเปอร์เซ็นไทล์ที่ 50 อยู่ที่ 155,650–200,000 ดอลลาร์ โดยเปอร์เซ็นไทล์จะแสดงขึ้นก็ต่อเมื่อมีข้อมูลเงินเดือนเปิดเผยอย่างน้อย 30 รายการเท่านั้น
การใช้งาน API ข้อมูลงานแบบเรียลไทม์ผ่านบอท Telegram ถือเป็นแนวทางที่มีประสิทธิภาพสูงสำหรับนักพัฒนาที่ต้องการหางานไอทีโดยไม่ต้องเสียเวลาเปิดเว็บไซต์หางานซ้ำๆ ทุกวัน การใช้ Python เพียงไม่กี่บรรทัดผสานกับระบบ ATS ทำให้ได้ข้อมูลดิบที่แม่นยำและอัปเดตเร็วกว่าแพลตฟอร์มตัวกลางทั่วไปอย่างมาก
พารามิเตอร์ days_ago จะทำการกรองตามวันที่ประกาศของนายจ้าง ไม่ใช่วันที่ระบบทำการจัดเก็บข้อมูล นั่นคือเหตุผลที่ค่ามัธยฐานในตัวอย่างคือสี่วัน ไม่ใช่สี่ชั่วโมง เนื่องจากตัวกรองมุ่งเน้นไปที่ตัวงาน ไม่ใช่ตัวระบบรวบรวมข้อมูล
ข้อผิดพลาดที่เกิดขึ้นจะถูกส่งมาในรูปแบบออบเจ็กต์เดียว โดยแนะนำให้ตรวจสอบเงื่อนไขจากข้อผิดพลาดโดยตรง แทนที่จะตรวจสอบจากข้อความแจ้งเตือน นอกจากนี้ แพลนใช้งานฟรีของบริการนี้กำหนดไว้ที่ 200 โพสต์ และการเรียกใช้งาน insights 5 ครั้งต่อเดือน โดยไม่ต้องใช้บัตรเครดิต
ที่มา: Dev.to
พบข้อมูลผิดพลาดในบทความนี้? แจ้งปัญหาบทความนี้
ความคิดเห็น
แสดงความคิดเห็น