เข้าสู่ระบบ Facebook โดยใช้ Python: ตัวอย่างการเข้าสู่ระบบ FB

⚡ สรุปอย่างชาญฉลาด

Python สามารถล็อกอินเข้าสู่ Facebook โดยอัตโนมัติโดยใช้ Seleniumเครื่องมืออัตโนมัติสำหรับเบราว์เซอร์ ที่นี่คุณจะได้เรียนรู้วิธีเขียน Selenium สคริปต์ที่เปิดเบราว์เซอร์ ไปยังหน้า Facebook กรอกข้อมูลอีเมลและรหัสผ่าน และคลิกปุ่มเข้าสู่ระบบ

  • 🌐 Selenium: Selenium จำลองการทำงานของเบราว์เซอร์จริงโดยอัตโนมัติ เพื่อกรอกแบบฟอร์มและคลิกปุ่มต่างๆ
  • 🦊 เปิดเบราว์เซอร์: เว็บไดรเวอร์Firefox() หรือ Chrome() จะเปิดเบราว์เซอร์จาก Python.
  • 🔎 ค้นหาฟิลด์: find_element(By.ID, …) จะค้นหาช่องอีเมล รหัสผ่าน และปุ่มเข้าสู่ระบบ
  • ⌨️ กรอกข้อมูลและส่ง: send_keys() จะพิมพ์ข้อความ และ click() จะส่งแบบฟอร์มล็อกอิน
  • 🤖 ความช่วยเหลือจาก AI: เครื่องมือ AI เช่น Copilot สร้างขึ้น Selenium สร้างสคริปต์อัตโนมัติได้ทันที

เข้าสู่ระบบ Facebook โดยใช้ Python

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

วิธีเข้าสู่ระบบ Facebook โดยใช้ Python

ในการเข้าสู่ระบบ Facebook เราจะใช้ Python สคริปต์ที่ขับเคลื่อน Seleniumส่วน Selenium Python สคริปต์จะ

  • ขั้นตอนที่ 1) เปิด Firefox
  • ขั้นตอนที่ 2) ไปที่ Facebook
  • ขั้นตอนที่ 3) ค้นหาและป้อนอีเมลหรือช่องโทรศัพท์และป้อนรหัสผ่าน
  • ขั้นตอนที่ 4) คลิกเข้าสู่ระบบ

นี่คือวิดีโอสั้นๆ เกี่ยวกับระบบที่จะใช้งานได้

หมายเหตุ: คุณสามารถกำหนดค่าได้ Selenium เพื่อใช้เบราว์เซอร์ใดๆ เช่น Chrome, Safari, IE เป็นต้น ในบทช่วยสอนนี้ เราจะใช้ FireFox

คุณต้องติดตั้งอะไรบ้าง?

  • รับรองว่ามี Selenium ติดตั้งบนพีซีของคุณ อ้างอิงสิ่งนี้ ลิงค์ เพื่อเรียนรู้การติดตั้ง Selenium
  • ใช้ นี้ ลิงค์เพื่อติดตั้ง Python สำหรับ Selenium

Code เพื่อเข้าสู่ระบบ Facebook โดยใช้ Python

from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
# Step 1) Open Firefox 
browser = webdriver.Firefox()
# Step 2) Navigate to Facebook
browser.get("http://www.facebook.com")
# Step 3) Search & Enter the Email or Phone field & Enter Password
username = browser.find_element_by_id("email")
password = browser.find_element_by_id("pass")
submit   = browser.find_element_by_id("loginbutton")
username.send_keys("you@email.com")
password.send_keys("yourpassword")
# Step 4) Click Login
submit.click()

เข้าสู่ระบบ Facebook โดยใช้ Python

คำอธิบายของรหัส

  • Code บรรทัด 1: จากโมดูล Selenium นำเข้า webdriver
  • Code บรรทัด 2: จากโมดูล Selenium นำเข้าคีย์
  • Code บรรทัด 4: ในบรรทัดนี้ เราจะเริ่มต้น “FireFox” โดยการสร้างวัตถุของมัน
  • Code บรรทัด 6เมธอด “browser.get” จะนำไปยังหน้าเว็บที่กำหนดโดย URLWebDriver จะรอจนกว่าหน้าเว็บจะโหลดเสร็จสมบูรณ์ (กล่าวคือ เหตุการณ์ "onload" สิ้นสุดลงแล้ว) ก่อนที่จะส่งการควบคุมกลับไปยังการทดสอบหรือสคริปต์ของคุณ
  • Code บรรทัด 8:ในบรรทัดนี้ เรากำลังค้นหาองค์ประกอบของกล่องข้อความซึ่งจะต้องเขียน "อีเมล"
  • Code บรรทัด 9:ในบรรทัดนี้ เรากำลังค้นหาองค์ประกอบของกล่องข้อความซึ่งจะต้องเขียน “รหัสผ่าน”
  • Code บรรทัด 10: ในบรรทัดนี้ เรากำลังค้นหาองค์ประกอบปุ่มส่งที่เราต้องคลิก
  • Code บรรทัด 11: ตอนนี้เรากำลังส่งค่าไปยังส่วนอีเมล
  • Code บรรทัด 12: การส่งค่าไปยังส่วนรหัสผ่าน
  • Code บรรทัดที่ 14: คลิกที่ปุ่ม “ส่ง”

ตัวอย่างเอาท์พุท

ค่าของชื่อผู้ใช้ “guru99” และรหัสผ่านที่ป้อน

เข้าสู่ระบบ Facebook โดยใช้ Python

เพจ Facebook จะเข้าสู่ระบบด้วยอีเมลและรหัสผ่าน เพจจะเปิดขึ้น (ดูรูปภาพด้านล่าง)

เข้าสู่ระบบ Facebook โดยใช้ Python

การใช้การรอแบบระบุชัดเจนเพื่อการเข้าสู่ระบบที่เชื่อถือได้

ทันสมัย Selenium 4 แทนที่เมธอดต่างๆ เช่น find_element_by_id ด้วย find_element(By.ID, …) การรวมเมธอดนี้เข้ากับการรอแบบชัดเจนจะทำให้สคริปต์รอให้แต่ละฟิลด์โหลดเสร็จก่อนที่จะโต้ตอบกับฟิลด์นั้น

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

browser = webdriver.Firefox()
browser.get("https://www.facebook.com")

wait = WebDriverWait(browser, 10)
email = wait.until(EC.presence_of_element_located((By.ID, "email")))
password = browser.find_element(By.ID, "pass")

email.send_keys("you@email.com")
password.send_keys("yourpassword")
browser.find_element(By.ID, "loginbutton").click()

ฟังก์ชัน WebDriverWait จะหยุดรอจนกว่าจะมีการป้อนอีเมล ซึ่งจะช่วยป้องกันข้อผิดพลาดเมื่อหน้าเว็บโหลดช้า

การเรียกใช้สคริปต์ด้วย Chrome

Selenium ใช้งานได้กับทุกเบราว์เซอร์ หากต้องการใช้ Chrome แทน Firefoxเปลี่ยนไดรเวอร์แล้วคงโค้ดส่วนที่เหลือไว้เหมือนเดิม

from selenium import webdriver
from selenium.webdriver.common.by import By

browser = webdriver.Chrome()
browser.get("https://www.facebook.com")
browser.find_element(By.ID, "email").send_keys("you@email.com")
browser.find_element(By.ID, "pass").send_keys("yourpassword")
browser.find_element(By.ID, "loginbutton").click()

แนวทางปฏิบัติที่ดีที่สุดและข้อควรระวัง

  • ตั้งค่าระบบอัตโนมัติเฉพาะบัญชีของคุณเอง และปฏิบัติตามข้อกำหนดในการให้บริการของเว็บไซต์
  • ห้ามกำหนดรหัสผ่านแบบตายตัวในโค้ด ให้ดึงรหัสผ่านจากตัวแปรสภาพแวดล้อมหรือโปรแกรมจัดการความลับแทน
  • การเข้าสู่ระบบจริงอาจต้องจัดการกับแบนเนอร์คุกกี้หรือการยืนยันตัวตนสองขั้นตอน
  • สำหรับการผสานรวมเข้ากับระบบการใช้งานจริง ควรเลือกใช้ Facebook Login API อย่างเป็นทางการมากกว่าการทำงานอัตโนมัติผ่านเบราว์เซอร์

คำถามที่พบบ่อย

ใช้ Selenium เพื่อเปิดเบราว์เซอร์ด้วย WebDriverFirefox(), ไปที่ Facebook ค้นหาช่องอีเมลและรหัสผ่านตาม ID พิมพ์ข้อมูลประจำตัวของคุณด้วย send_keys() แล้วคลิกปุ่มเข้าสู่ระบบ

คุณต้องการ Pythonที่ Selenium ไลบรารี และไดรเวอร์เบราว์เซอร์ เช่น GeckoDriver สำหรับ Firefox หรือ ChromeDriver สำหรับ Chrome ติดตั้งเลย Selenium ติดตั้ง Selenium ด้วย pip install selenium

Selenium ค้นหาองค์ประกอบโดยใช้รหัส HTML ขององค์ประกอบนั้น ใน Selenium 4. ใช้ find_element(By.ID, 'email') สำหรับช่องอีเมล และเรียกใช้ในลักษณะเดียวกันสำหรับช่องรหัสผ่านและปุ่มเข้าสู่ระบบ

การรอแบบระบุชัดเจนด้วย WebDriverWait จะหยุดชั่วคราวจนกว่าองค์ประกอบจะโหลดเสร็จก่อน Selenium มีการโต้ตอบกับระบบ ซึ่งจะช่วยป้องกันข้อผิดพลาดเมื่อหน้า Facebook โหลดช้าหรือองค์ประกอบต่างๆ แสดงผลล่าช้า

คุณสามารถใช้ Facebook Login API อย่างเป็นทางการเพื่อยืนยันตัวตนจากแอปพลิเคชันของคุณได้ ซึ่งมีความเสถียรและปลอดภัยกว่าการยืนยันตัวตนผ่านเบราว์เซอร์สำหรับการใช้งานร่วมกับระบบจริง

ผู้ช่วย AI เช่น GitHub Copilot ที่ช่วยเติมข้อความอัตโนมัติ Selenium โทรออก สร้างตัวระบุตำแหน่งและเวลารอ และแปลงขั้นตอนที่อธิบายไว้ให้เป็นสคริปต์การทำงานอัตโนมัติของเบราว์เซอร์ขณะที่คุณพิมพ์

ใช่แล้ว เครื่องมือที่ขับเคลื่อนด้วย AI สามารถสร้างข้อมูลโดยอัตโนมัติได้ Selenium สคริปต์แนะนำตัวระบุตำแหน่งองค์ประกอบที่มีประสิทธิภาพ และเพิ่มการจัดการข้อผิดพลาดและการรอเพื่อให้การเข้าสู่ระบบอัตโนมัติมีความน่าเชื่อถือมากขึ้น

ตั้งค่าระบบอัตโนมัติเฉพาะบัญชีของคุณเอง และปฏิบัติตามข้อกำหนดในการให้บริการของเว็บไซต์ ห้ามป้อนรหัสผ่านแบบตายตัว และเตรียมพร้อมรับมือกับแบนเนอร์แจ้งเตือนคุกกี้หรือข้อความแจ้งเตือนการยืนยันตัวตนสองขั้นตอน

สรุปโพสต์นี้ด้วย: