Das Profilbild ist eines der wichtigsten Elemente eines jeden Social-Media-Kontos, aber Anwendungen wie Instagram erlauben es Ihnen nicht, es anzuzeigen oder herunterzuladen. Dieser Prozess kann leicht mit einem Web-Automatisierungstool wie Selenium mit Python erreicht werden.

Lernen Sie, dieses Power-Duo zu verwenden, um mit jedem Element einer Webseite zu interagieren, es zu automatisieren und sich wertvolle Zeit zu sparen, die Sie in produktive Aufgaben investieren. Und das Beste? Erstellen Sie dies, ohne sich anzumelden oder ein Instagram-Konto zu haben.!

Der Algorithmus-Erstellungsprozess

Die Algorithmenerstellung bezieht sich auf den Prozess der Identifizierung des Problems und der Auflistung der Schritte, die das Programm automatisieren muss. Die verschiedenen Schritte, die zum Herunterladen eines Profilbilds erforderlich sind, sind:

  1. Nehmen Sie den Benutzernamen eines Profils als Eingabe
  2. Öffnen Sie Google Chrome
  3. Besuchen Sie das Instagram-Profil
  4. Laden Sie das Profilbild herunter
instagram viewer

Dies dient als Algorithmus der Problemstellung.

Dieses Projekt verwendet die folgenden Python-Module und -Tools.

1. Urllib-Modul

Urllib ist ein Python-Modul, das verwendet wird, um URLs aus dem Internet zu verarbeiten. Sie werden dieses Modul verwenden, um das Profilbild des Kontos von seiner Quell-URL herunterzuladen. Wenn Urllib in Ihrem System nicht vorhanden ist, können Sie es mit dem Befehl installieren pip install urllib.

2. Zeitmodul

Dieses Modul ist zwar nicht obligatorisch, kann jedoch dazu führen, dass der Build fehlschlägt, wenn Ihre Internetverbindung langsam ist oder Der Inhalt der Webseite wird während der Interaktion des Python-Programms mit dem nicht geladen Website. Die Funktion delay() hilft uns, eine kleine Verzögerung einzubauen, damit der Build nicht fehlschlägt.

3. Selen-Modul

Eines der beliebtesten Open-Source-Tools zur Browserautomatisierung ist Selenium. Es ist als Python-Paket verfügbar, das verschiedene Browser wie Google Chrome, Microsoft Edge, Safari und Mozilla Firefox unterstützt. Um Selenium in Ihrer Python-Umgebung zu installieren, öffnen Sie Ihre Terminal und ausführenpip Selen installieren.

4. WebDriver

Ein Webtreiber ist ein von Selenium verwendetes Tool, das eine Verbindung zwischen dem Programm und einer beliebigen Website herstellt. Verschiedene Arten von Webtreibern sind basierend auf dem Browser verfügbar, den Sie automatisieren möchten. Für diesen Build verwenden Sie den Google Chrome-Browser. So installieren Sie den Webtreiber für Chrome:

  1. Überprüfen Sie die Version des Browsers, den Sie verwenden, indem Sie die besuchen Speisekarte (3 Punkte) >Hilfe > Über Google Chrome.
  2. Beachten Sie die Version des Browsers.
  3. Besuchen Sie die Download-Seite von ChromeDriver - WebDriver für Chrome.
  4. Wählen Sie aus den aktuellen Versionen von ChromeDriver die Option aus, die Ihrer Versionsnummer entspricht.
  5. Wählen Sie die Datei entsprechend Ihrem Betriebssystem aus und laden Sie sie herunter.
  6. Extrahieren Sie die heruntergeladene Datei und legen Sie sie im selben Ordner wie Ihr Python-Programm ab. Dies ist hilfreich beim Festlegen des Pfads während des Codierens.

So prüfen Sie Code zur Automatisierung beliebiger Aspekte einer Webseite

Für jeden Web-Automatisierungsprozess mit Selenium und Python ist ein grundlegendes Verständnis des Webs und seiner Technologien unerlässlich. Der erste Schritt ist zu gewinnen eine Einführung in HTML gefolgt von Cascading Style Sheets (CSS) verstehen. Hier werden Sie mit dem Konzept von IDs und Klassen vertraut gemacht.

IDs und Klassen sind eindeutige Namen, die einem Element bzw. einer Gruppe von Elementen (Tags) gegeben werden. Mit diesen lokalisieren Sie das erforderliche Element und weisen das Python-Programm an, es gezielt anzusprechen. So überprüfen Sie den Code und suchen das Profilbild:

  1. Öffnen Sie die Webseite des Instagram-Kontos.
  2. Klicken Sie auf den Browser Speisekarte > Mehr Werkzeuge > Entwicklerwerkzeuge oder verwenden Sie die Verknüpfung Strg + Umschalt + I um die zu aktivieren Entwicklerwerkzeuge Aussicht.
  3. Klicken Sie auf und wählen Sie die aus Elementauswahl Werkzeug (Mauszeiger-Symbol) in der linken Ecke des Fensters und bewegen Sie es über einen beliebigen Teil der Webseite, um zu diesem Codeabschnitt zu springen.
  4. Es ist wichtig zu beachten, dass die Profilbilder eines öffentlichen Kontos und eines privaten Kontos unterschiedlich eingestellt sind. Bewegen Sie den Mauszeiger über das Profilbild eines öffentlichen Kontos. Das Klassenattribut für das öffentliche Profil ist _aa8j.
  5. Wiederholen Sie den obigen Schritt für ein privates Profil. Das Klassenattribut ist _aadp.

Sie können dieses Verfahren verwenden, um jede Webseite zu verstehen und jedes Element für die Automatisierung anzuvisieren.

So erstellen Sie den Instagram-Profilbild-Downloader

Befolgen Sie diese Schritte, um den Downloader zu erstellen.

  1. Importieren Sie die erforderlichen Module in die Python-Umgebung.
    aus Selen importieren Webtreiber
    importieren Zeit
    importieren urllib.request
  2. Ermitteln Sie mit der Eingabefunktion den Benutzernamen des Profils, dessen Profilbild heruntergeladen werden soll, und speichern Sie ihn in einer Variablen namens Benutzername.
    #Eingabe des Benutzernamens des Profils, dessen Profilbild heruntergeladen werden soll 
    Benutzername=Eingabe("Geben Sie den Benutzernamen des Profils ein: ")
  3. Initialisieren Sie den Webtreiber, indem Sie ein Objekt davon erstellen und seinen Dateisystempfad übergeben.
    #Erstellen eines Objekts von chromedriver 
    cd='chromedriver.exe'
  4. Verwenden Sie die Webtreiber. Chrom Funktion zum Starten des Google Chrome-Browsers.
    #Google Chrome-Browser öffnen 
    Treiber = Webtreiber. Chrom(CD)
  5. Die URL eines beliebigen Instagram-Kontos hat das Format https://www.instagram.com/ gefolgt vom Benutzernamen. Legen Sie die URL des Profils fest als,
    #Festlegen der URL
    url='https://www.instagram.com/'
    url_p=url+user_h
  6. Übergeben Sie die vollständige URL des zu besuchenden Instagram-Profils an die Funktion get().
    #öffne das Profil 
    Treiber.erhalten(url_p)
  7. Legen Sie optional eine empfohlene Verzögerung für das vollständige Laden der Webseite fest.
    #Verzögerung für das Laden von Seiteninhalten
    Zeit.schlafen(5)
  8. Verwenden Sie den Try-Außer-Block, um zu ermitteln und festzustellen, ob das Profilbild zu einem öffentlichen Profil gehört. Dazu wird das Klassenattribut im XPath-Ausdruck verwendet. Verwenden Sie im Fehlerfall den Except-Block, um das Profilbild eines privaten Kontos zu durchsuchen.
    Versuchen:
    #Wenn das Profil öffentlich ist, suche nach einem Bild mit der Klasse _aa8j
    image=driver.find_element_by_xpath('//img[@class="_aa8j"]')
    außer:
    #Wenn das Profil privat ist, suchen Sie nach dem Bild mit der Klasse _aadp
    image=driver.find_element_by_xpath('//img[@class="_aadp"]')
  9. Gewinnen Sie mit get_attribute() das src-Attribut des Bildes. Dies gibt den Link des Bildes zurück.
    #speichere den Download-Link des Bildes 
    img_link=image.get_attribute('Quelle')
  10. Legen Sie den Pfad und die Erweiterung der heruntergeladenen Datei fest. Beispielsweise können Sie das herunterzuladende Bild auf das Laufwerk D: Ihres Dateisystems im JPG-Format einstellen.
    #set Pfad der heruntergeladenen Datei 
    Pfad="D:\\"+Benutzername+".jpg"
  11. Laden Sie das Bild herunter, indem Sie den Link des Profilbilds als Quelle und den Pfad des lokalen Systemordners als Ziel an die Funktion urlretrieve() übergeben.
    #Herunterladen des Bildes zum gewünschten Ziel
    urlib.Anfrage.urlabrufen(img_link,Weg)
  12. Besuchen Sie den Ordner und sehen Sie, dass das Profilbild heruntergeladen wurde. Optional können Sie sich auch den Pfad anzeigen lassen, wo das Profilbild heruntergeladen wurde.
    # zeigt den Pfad des heruntergeladenen Profilbilds an 
    drucken("Das Profilbild wurde heruntergeladen unter: "+Pfad)

Endgültiger Quellcode für Instagram Profile Pic Downloader mit Python

Alles zusammen ergibt:

#Importieren der erforderlichen Module
aus Selen importieren Webtreiber
importieren Zeit
importieren urllib.request
#Eingabe des Benutzernamens des Profils, dessen Profilbild heruntergeladen werden soll
user_h=eingabe("Geben Sie den Benutzernamen des Profils ein: ")
#Festlegen der URL
url='https://www.instagram.com/'
url_p=url+user_h
#Objekt von Chromedriver erstellen
cd='chromedriver.exe'
#Google öffnen
Treiber = Webtreiber. Chrom(CD)
#öffne das Profil
Treiber.erhalten(url_p)
#Verzögerung für das Laden von Seiteninhalten
Zeit.schlafen(5)
Versuchen:
#Wenn das Profil öffentlich ist, suche nach einem Bild mit der Klasse _aa8j
image=driver.find_element_by_xpath('//img[@class="_aa8j"]')
außer:
#Wenn das Profil privat ist, suchen Sie nach dem Bild mit der Klasse _aadp
image=driver.find_element_by_xpath('//img[@class="_aadp"]')

#speichere den Download-Link des Bildes
img_link=image.get_attribute('Quelle')

Anwendungen der Web-Automatisierung

Die Automatisierung hilft Ihnen nicht nur, Zeit, Geld und Aufwand zu sparen, sondern garantiert auch die Erledigung von Aufgaben und verhindert Fehler. Verwenden Sie diese Technik, um die Anmeldung verschiedener Websites zu automatisieren, Cloud-Server-Backups durchzuführen, Nachrichten zu planen, Geburtstage auf Social-Media-Plattformen zu wünschen, Beiträge zu erstellen, Tweets zu veröffentlichen und vieles mehr.