มาทำ Selenium ด้วยภาษา Golang กัน

Selenium คือเครื่องมือที่ใช้ในการจำลองการกระทำต่างๆบนเว็บไซต์ตามที่เรากำหนด ซึ่งไม่ได้จำกัดเพียงแค่การคลิกบนเว็บไซต์เท่านั้น แต่ยังรวมถึงฟังก์ชันอื่นๆอีกมากมาย แต่ในบทความนี้ เราจะเน้นไปที่การใช้ Selenium เพื่อใส่ข้อมูลลงในฟิลด์อินพุต (Input) และการคลิกบนเว็บไซต์เท่านั้น

ประโยชน์ของ Selenium
- ทำ Automated Testing มาช่วยลดการทำงานซ้ำซ้อนและความผิดพลาดของมนุษย์เพราะยังไงก็ต้องมีหลุดมีลืม แต่องกรค์ที่ทำ Automated Testing ไม่มีหลุดหรือลืมแน่นอนเพราะทำตาม Code Script ที่วางไว้ และรวดเร็วแม่นยำกว่าแน่นอน
- การดูดข้อมูลจาก Website นั้นได้ (Web Scraping) ไม่ลงลึกเดียวส่งเสริมการทำไม่ดี 5555

สิ่งที่ต้องเตรียมก่อนเริ่ม
- ติดตั้ง Chromedriver
- Golang
- Vscode

ติดตั้งแล้วมาเริ่มกันเลย

จาก Code จะอธิบายเป็นส่วนๆไปนะครับ

สร้าง Chrome Driver Service ที่ Port 4444 รวมถึงปิดการใช้งาน เมื่อทำงานเสร็จ (defer จะทำหลังสุด)
เป็นการ Set ค่าต่างๆของ Chrome Prefs ยอมรับ Notification จาก Chrome และ Args กำหนด ตัวเลือกเพิ่มเติมสำหรับการเปิด Chrome รวมถึงขนาดหน้าต่าง, ปิดการใช้ sandbox, และการปิดการใช้ GPU
ให้ไปที่ Facebook แล้ว Delay Time ไป 5 วิ เผื่อ Internet ช้า
หลังจากนั้นก็ทำการใส่ Input ที่ input[name=email] ,input[name=pass] และหลังจากใส่ค่าเสร็จก็ให้กดปุ่ม button[type=’submit’]

ซึ่งค่า CSS ต่างๆ inspect จากเว็บที่เราจะทำการ Automated ได้เลย

จากรูปผมจะ Inspect จาก Facebook
หลังจาก Login ผมก็จะไป Link ที่ Post อยู่ และทำการ Find หา CSS ที่ผมไป Inspect มา
ผมจะค้นหาปุ่มถูกใจทั้งหมดซึ่งมี Class เป็น x1rg5ohu.x1emribx.x1i64zmx
จากนั้นผมก็จะกรองคำที่มี Text เป็นถูกใจเท่านั้นเผื่อ Class อื่นๆที่ไม่ใช่ถูกใจก็ใช้แบบนั้นเหมือนกัน เมื่อ Text = ถูกใจแล้วผมก็จะให้ทำการ Click
Video สำหรับการ Run Code ครั้งนี้

จบไปแล้วครับสำหรับการทำ Automated ด้วย Selenium ด้วยภาษา Golang อันนี้เป็นแค่ Basic สำหรับการทำนะครับหวังว่าอาจจะมีประโยชน์ไม่มากก็น้อยต่อผู้มาอ่านนะครับ รอติดตามบทความหน้าผมได้เลยครับแต่เรื่องอะไรไม่รู้นะ 555555

( CR. ธำรงค์ ไชยวงค์ )

--

--

No responses yet