Συνδεθείτε στο Facebook χρησιμοποιώντας Python: Παράδειγμα σύνδεσης στο FB
⚡ Έξυπνη Σύνοψη
Python μπορεί να συνδεθεί αυτόματα στο Facebook χρησιμοποιώντας Selenium, ένα εργαλείο αυτοματοποίησης προγράμματος περιήγησης. Εδώ θα μάθετε να γράφετε ένα Selenium Ένα σενάριο που ανοίγει ένα πρόγραμμα περιήγησης, μεταβαίνει στο Facebook, συμπληρώνει τα πεδία email και κωδικού πρόσβασης και κάνει κλικ στην επιλογή σύνδεσης.

Για να συνδεθείτε στο Facebook χρησιμοποιώντας Python, πρέπει να χρησιμοποιήσετε Selenium (ένα εργαλείο αυτοματισμού ιστού). Selenium μπορεί να αυτοματοποιήσει και να ελέγξει ένα πρόγραμμα περιήγησης και να κάνει κλικ, να συμπληρώσει κείμενο, να υποβάλει κουμπιά που εμφανίζονται σε διάφορους ιστότοπους.
Πώς να συνδεθείτε στο Facebook χρησιμοποιώντας Python
Για να συνδεθείτε στο Facebook, θα χρησιμοποιήσουμε α Python Σενάριο που οδηγεί Selenium. ο Selenium Python Σενάριο θα
- Βήμα 1) Ανοίξτε Firefox
- Βήμα 2) Πλοηγηθείτε στο Facebook
- Βήμα 3) Αναζήτηση & Εισαγάγετε το πεδίο Email ή Τηλέφωνο & Εισαγάγετε τον κωδικό πρόσβασης
- Βήμα 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()
Επεξήγηση του κώδικα
- Code γραμμή 1: Από το πρόγραμμα οδήγησης web εισαγωγής μονάδας σεληνίου
- Code γραμμή 2: Από Κλειδιά εισαγωγής μονάδας σεληνίου
- Code γραμμή 4: Σε αυτή τη γραμμή, αρχικοποιούμε το «FireFox” κάνοντας ένα αντικείμενο.
- Code γραμμή 6Η μέθοδος "browser.get" θα μεταβεί σε μια σελίδα που δίνεται από το URLΤο WebDriver περιμένει μέχρι να φορτωθεί πλήρως η σελίδα (δηλαδή, να έχει λήξει η περίπτωση "onload"), πριν επιστρέψει τον έλεγχο στη δοκιμή ή το σενάριο.
- Code γραμμή 8: Σε αυτή τη γραμμή, βρίσκουμε το στοιχείο του πλαισίου κειμένου όπου πρέπει να γραφτεί το "email".
- Code γραμμή 9: Σε αυτή τη γραμμή, βρίσκουμε το στοιχείο του πλαισίου κειμένου όπου πρέπει να γραφτεί ο «κωδικός πρόσβασης».
- Code γραμμή 10: Σε αυτή τη γραμμή, βρίσκουμε το στοιχείο κουμπιού υποβολής στο οποίο πρέπει να κάνουμε κλικ
- Code γραμμή 11: Τώρα στέλνουμε τις τιμές στην ενότητα email
- Code γραμμή 12: Αποστολή τιμών στην ενότητα κωδικών πρόσβασης
- Code γραμμή 14: Κάντε κλικ στο κουμπί «Υποβολή»
Έξοδος δείγματος
Εισάγονται οι τιμές του ονόματος χρήστη "guru99" και του κωδικού πρόσβασης.
Η σελίδα του Facebook θα συνδεθεί με email και κωδικό πρόσβασης. Άνοιξε η σελίδα (δείτε την παρακάτω εικόνα)
Χρήση ρητών αναμονών για αξιόπιστη σύνδεση
ΜΟΝΤΕΡΝΑ 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 σταματάει μέχρι να εμφανιστεί το πεδίο email, γεγονός που αποτρέπει σφάλματα όταν η σελίδα φορτώνει αργά.
Εκτέλεση του Σεναρίου με το 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()
καλυτερα Πρακτικές και Προφυλάξεις
- Αυτοματοποιήστε μόνο τον δικό σας λογαριασμό και ακολουθήστε τους όρους παροχής υπηρεσιών του ιστότοπου.
- Ποτέ μην αποθηκεύετε κωδικούς πρόσβασης σε σκληρό κώδικα. Διαβάστε τους από μεταβλητές περιβάλλοντος ή από έναν διαχειριστή μυστικών πληροφοριών.
- Μια πραγματική σύνδεση μπορεί να απαιτεί χειρισμό ενός banner cookie ή έλεγχο ταυτότητας δύο παραγόντων.
- Για ενσωματώσεις παραγωγής, προτιμήστε το επίσημο API σύνδεσης στο Facebook αντί για αυτοματοποίηση προγράμματος περιήγησης.



