Web Scraping mit Python – Schritt-für-Schritt-Anleitung

Lernen Sie, Web Scraping mit Python durchzuführen, um schnell Daten von mehreren Websites zu sammeln und so Zeit und Mühe zu sparen.
Python web scraping guide
Gal El Al of Bright Data
Gal El Al | Director of Support
29-Nov-2022

Lernen Sie, wie man einen Web Scraper in Python erstellt, der eine ganze Website durchsucht und alle wichtigen Daten durch Web Scraping extrahiert.

Beim Web Scraping geht es darum, Daten aus dem Web zu extrahieren. Ein Web Scraper ist ein Tool, das Web Scraping durchführt und im Allgemeinen durch ein Skript dargestellt wird. Python ist eine der einfachsten und zuverlässigsten Skriptsprachen auf dem Markt. Außerdem verfügt sie über eine Vielzahl von Web-Scraping-Bibliotheken. Das macht Python zur perfekten Programmiersprache für Web Scraping. Im Einzelnen erfordert Python Web Scraping nur wenige Zeilen Code.  

In diesem Tutorial lernen Sie alles, was Sie für die Erstellung eines einfachen Python-Scrapers wissen müssen. Diese Anwendung durchsucht eine gesamte Website und extrahiert Daten von jeder Seite. Anschließend werden alle Daten, die wir mit Python gesammelt haben, in einer CSV-Datei gespeichert. In diesem Tutorial erfahren Sie, welche die besten Python-Bibliotheken für Data Scraping sind, welche Sie verwenden sollten und wie Sie sie einsetzen können. Folgen Sie diesem Tutorial Schritt für Schritt und lernen Sie, wie Sie ein Web-Scraping-Python-Skript erstellen.

Inhaltsangabe:

Voraussetzungen

Um einen Python-Web-Scraper zu erstellen, benötigen Sie die folgenden Voraussetzungen:

Wenn Sie Python noch nicht auf Ihrem Computer installiert haben, können Sie es über den ersten Link oben herunterladen. Wenn Sie ein Windows-Benutzer sind, achten Sie darauf, dass Sie bei der Installation von Python das Kontrollkästchen „Add python.exe to PATH“ (python.exe zu PATH hinzufügen) markieren (siehe unten):

Installation von Python auf einem Computer
Das Installationsfenster von Python für Windows

Auf diese Weise erkennt Windows automatisch die Befehle python und pip im Terminal. Im Detail ist pip ein Paketmanager für Python-Pakete. Beachten Sie, dass pip standardmäßig in Python Version 3.4 oder höher enthalten ist. Sie müssen es also nicht manuell installieren.  

Sie sind nun bereit, Ihren ersten Python Web Scraper zu erstellen. Aber zuerst brauchen Sie eine Python Web Scraping Bibliothek!

Die besten Python-Bibliotheken für Web Scraping.

Sie können ein Web-Scraping-Skript von Grund auf mit Python Vanilla erstellen, aber das ist nicht die ideale Lösung. Schließlich ist Python für seine große Auswahl an verfügbaren Bibliotheken bekannt. Im Einzelnen gibt es mehrere Web Scraping Bibliotheken, aus denen Sie wählen können. Werfen wir nun einen Blick auf die wichtigsten davon!

Requests

Mit der requests-Bibliothek können Sie HTTP-Anfragen in Python ausführen. Im Vergleich zu den Standard-HTTP-Bibliotheken von Python erleichtert requests das Senden von HTTP-Anfragen. requests spielt eine Schlüsselrolle in einem Python Web Scraping Projekt. Denn um die in einer Webseite enthaltenen Daten zu scrapen, müssen Sie diese zunächst über einen HTTP-GET-Request abrufen. Außerdem müssen Sie möglicherweise weitere HTTP-Anfragen an den Server der Ziel-Website stellen.  

Sie können requests  mit dem folgenden Pip-Befehl installieren:

pip install requests

Beautiful Soup

Die Python-Bibliothek Beautiful Soup erleichtert das Sammeln von Informationen aus Webseiten. Beautiful Soup funktioniert mit jedem HTML- oder XML-Parser und bietet alles, was Sie zum Iterieren, Suchen und Ändern des Parsebaums benötigen. Beachten Sie, dass Sie Beautiful Soup mit html.parser verwenden können, dem Parser, der in der Python-Standardbibliothek enthalten ist und mit dem Sie HTML-Textdateien parsen können. Im Einzelnen können Sie Beautiful Soup verwenden, um das DOM zu durchlaufen und die benötigten Daten daraus zu extrahieren.

Sie können Beautiful Soup mit der Pip wie folgt installieren:

pip install beautifulsoup4

Selenium

Selenium ist ein fortschrittliches, automatisiertes Open-Source-Testframework, mit dem Sie Operationen auf einer Webseite in einem Browser ausführen können. Mit anderen Worten: Sie können Selenium verwenden, um einen Browser anzuweisen, bestimmte Aufgaben auszuführen. Beachten Sie, dass Sie Selenium aufgrund seiner Headless-Browser-Fähigkeiten auch als Web-Scraping-Bibliothek verwenden können. Falls Sie mit diesem Konzept nicht vertraut sind: Ein Headless Browser ist ein Webbrowser, der ohne eine grafische Benutzeroberfläche (GUI – Graphical User Interface) läuft. Wenn Selenium im Headless-Modus konfiguriert ist, wird der Browser im Hintergrund ausgeführt.  

So werden die in Selenium besuchten Webseiten in einem echten Browser gerendert, der in der Lage ist, JavaScript auszuführen. Folglich können Sie mit JavaScript Selenium Websites scrapen, die auf JavaScript angewiesen sind. Beachten Sie, dass Sie dies nicht mit Requests oder einem anderen HTTP-Client erreichen können. Der Grund dafür ist, dass Sie einen Browser benötigen, um JavaScript auszuführen, während Requests Ihnen lediglich ermöglicht, HTTP-Anfragen auszuführen.

Selenium stellt Ihnen alles zur Verfügung, was Sie brauchen, um einen Web Scraper ohne weitere Bibliotheken zu erstellen. Sie können es mit dem folgenden pip-Befehl installieren:  

pip install selenium

Erstellen eines Web Scrapers in Python

Im Folgenden lernen Sie, wie man einen Web Scraper in Python erstellt. Das Ziel dieses Tutorials ist es, zu lernen, wie man alle Quotes von der Quotes to Scrape Website extrahiert. Für jeden Quote werden Sie lernen, wie Sie den Text, den Autor und die Liste der Tags auslesen können.  

Werfen wir jedoch zunächst einen Blick auf die Ziel-Website. So sieht eine Webseite von Quotes to Scrape aus:

Quotes to Scrape Seite gif
Eine allgemeine Übersicht über Quotes to Scrape

Wie Sie sehen können, ist Quotes to Scrape nichts anderes als eine Testumgebung für Web Scraping. Sie enthält insbesondere eine paginierte Liste von Quotes. Der Python-Web-Scraper, den Sie erstellen werden, wird alle auf jeder Seite enthaltenen Quotes abrufen und sie als CSV-Daten zurückgeben.

Nun ist es Zeit herauszufinden, welches die besten Python-Bibliotheken für Web Scraping sind, um das Ziel zu erreichen. Wie Sie auf der Registerkarte „Netzwerk“ des Chrome DevTools-Fensters unten sehen können, führt die Ziel-Website keine Fetch/XHR-Anfrage durch.  

Netzwerk-Registerkarte des Chrome DevTools-Fensters
Beachten Sie, dass der Abschnitt Fetch/XHR leer ist

Mit anderen Worten: Quotes to Scrape verlässt sich nicht auf JavaScript, um auf Webseiten gerenderte Daten abzurufen. Dies ist eine übliche Situation für die meisten Server-gerenderten Webseiten. Da die Zielwebseite nicht auf JavaScript angewiesen ist, um die Seite zu rendern oder Daten abzurufen, brauchen Sie Selenium nicht, um sie zu scrapen. Sie können es trotzdem verwenden, aber es ist nicht erforderlich.

Wie Sie bereits gelernt haben, öffnet Selenium Webseiten in einem Browser. Da dies Zeit und Ressourcen benötigt, führt Selenium einen Leistungs-Overhead ein. Sie können dies vermeiden, indem Sie Beautiful Soup zusammen mit Requests verwenden. Im Folgenden lernen wir, wie man ein einfaches Python-Skript für Web Scraping erstellt, um mit Beautiful Soup Daten von einer Website abzurufen.

Erste Schritte

 

Bevor Sie mit dem Schreiben der ersten Codezeilen beginnen, müssen Sie Ihr Python Web Scraping Projekt einrichten. Technisch gesehen brauchen Sie nur eine einzige .py-Datei. Die Verwendung einer fortgeschrittenen IDE (Integrated Development Environment) erleichtert Ihnen jedoch das Programmieren. Hier erfahren Sie, wie Sie ein Python-Projekt in PyCharm 2022.2.3 einrichten, aber auch jede andere IDE ist geeignet.  

Öffnen Sie zunächst PyCharm und wählen Sie „Datei > Neues Projekt…“. Im Popup-Fenster „Neues Projekt“ wählen Sie „Pure Python“ und initialisieren Ihr Projekt.

Erstellung eines neuen Projekts in PyCharm
Das PyCharm-Popup-Fenster „Neues Projekt“

Sie können Ihr Projekt zum Beispiel python-web-scraper nennen. Klicken Sie auf „Erstellen“. Sie haben nun Zugang zu Ihrem leeren Python-Projekt. Standardmäßig wird PyCharm eine Datei main.py initialisieren. Der Übersichtlichkeit halber können Sie diese in scraper.py umbenennen. So sieht Ihr Projekt dann aus:  

python-web-scraping Python-Projekt in PyCharm
Das python-web-scraping Python-Leerprojekt in PyCharm

Wie Sie sehen können, initialisiert PyCharm automatisch eine Python-Datei für Sie. Ignorieren Sie den Inhalt dieser Datei und löschen Sie alle Codezeilen. Auf diese Weise fangen Sie bei Null an.

Anschließend installieren Sie die Abhängigkeiten des Projekts. Sie können Requests und Beautiful Soup installieren, indem Sie den folgenden Befehl im Terminal aufrufen:

pip install requests beautifulsoup4

Mit diesem Befehl werden beide Bibliotheken auf einmal installiert. Warten Sie, bis der Installationsprozess abgeschlossen ist. Jetzt können Sie Beautiful Soup und Requests verwenden, um Ihren Web-Crawler und -Scraper in Python zu erstellen. Stellen Sie sicher, dass Sie die beiden Bibliotheken importieren, indem Sie die folgenden Zeilen am Anfang Ihrer scraper.py-Skriptdatei hinzufügen:  

import requests
from bs4 import BeautifulSoup

PyCharm zeigt diese beiden Zeilen in grau an, da die Bibliotheken im Code nicht verwendet werden. Wenn sie rot unterstrichen sind, bedeutet dies, dass bei der Installation etwas schief gelaufen ist. Versuchen Sie sie in diesem Fall erneut zu installieren.

Die Datei scraper.py
Die aktuelle Datei scraper.py

So sollte Ihre scraper.py-Datei jetzt aussehen. Sie können nun mit der Definition der Web-Scraping-Logik beginnen.  

Verbinden mit der Ziel-URL zum Scrapen

 

Das erste, was in einem Web Scraper zu tun ist, ist eine Verbindung zu Ihrer Ziel-Webseite herzustellen. Rufen Sie zunächst die vollständige URL der Seite von Ihrem Webbrowser ab. Stellen Sie sicher, dass Sie auch den http:// oder http:// kopieren. HTTP-Protokollabschnitt. In diesem Fall handelt es sich um die gesamte URL der Ziel-Webseite:    

https://quotes.toscrape.com

Mit der folgenden Codezeile können Sie nun Requests zum Herunterladen einer Webseite verwenden:  

page = requests.get('https://quotes.toscrape.com')

Diese Zeile weist das Ergebnis einfach der Methode request.get() der variablen Seite zu. Im Hintergrund führt request.get() eine GET-Anforderung unter Verwendung der als Parameter übergebenen URL aus. Anschließend wird ein Response-Objekt zurückgegeben, das die Serverantwort auf die HTTP-Anfrage enthält.  

Wenn die HTTP-Anfrage erfolgreich ausgeführt wurde, enthält page.page.status_code den Wert 200. Dies liegt daran, dass der HTTP-Statuscode 200 OK anzeigt, aus dem hervorgeht, dass die HTTP-Anfrage erfolgreich ausgeführt wurde. Ein 4xx oder 5xx HTTP-Statuscode bedeutet einen Fehler. Dies kann aus verschiedenen Gründen geschehen, aber bedenken Sie, dass die meisten Webseiten Requests blockieren, die keinen gültigen User-Agent-Header enthalten. Der User-Agent-Header ist eine Zeichenfolge, die die Anwendung und die Version des Betriebssystems angibt, von der eine Anfrage stammt. Erfahren Sie mehr über User-Agents für Web Scraping.  

Sie können einen gültigen User-Agent-Header in requests wie folgt festlegen:  

headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36'
}

page = requests.get('https://quotes.toscrape.com', headers=headers)

requests wird nun die HTTP-Anfrage mit den als Parameter übergebenen Headern ausführen.  

Worauf Sie achten sollten, ist die Eigenschaft page.text. Diese enthält das vom Server zurückgegebene HTML-Dokument im String-Format. Geben Sie die text-Eigenschaft an Beautiful Soup weiter, um Daten aus der Web-Seite zu extrahieren. Hier erfahren Sie, wie das geht.  

Extrahieren von Daten mit dem Python Web Scraper

Zum Extrahieren von Daten aus einer Webseite müssen Sie zunächst die HTML-Elemente identifizieren, die die Daten enthalten, an denen Sie interessiert sind. Insbesondere müssen Sie die CSS-Selektoren finden, die erforderlich sind, um diese Elemente aus dem DOM zu extrahieren. Dies können Sie mit den Entwicklungswerkzeugen Ihres Browsers erreichen. Klicken Sie in Chrome mit der rechten Maustaste auf das gewünschte HTML-Element und wählen Sie Untersuchen.  

Überprüfung des HTML-Elements des Quotes
Untersuchen des HTML-Elements „quote“ in Chrome DevTools

Das HTML-Element quote <div> wird durch die Klasse quote identifiziert, wie Sie hier sehen können. Dieses enthält:  

  1. Den Text des Quotes in einem HTML-Element <span>  
  2. Den Verfasser des Quotes in einem HTML-Element <small>
  3. Eine Liste von Tags in einem <div>-Element, die jeweils in einem <a>-HTML-Element enthalten sind  

Im Einzelnen können Sie diese Daten mit den folgenden CSS-Selektoren in .quote extrahieren:  

  1. .text
  2. .author
  3. .tags .tag

Im Folgenden lernen Sie, wie Sie dies mit Beautiful Soup in Python erreichen können. Zunächst übergeben wir das HTML-Dokument page.text an den BeautifulSoup() Constructor:  

soup = BeautifulSoup(page.text, 'html.parser')

Der zweite Parameter gibt den Parser an, den Beautiful Soup zum Parsen des HTML-Dokuments verwenden wird. Die soup-Variable enthält nun ein BeautifulSoup-Objekt. Dies ist ein Parsebaum, der durch das Parsen des in page.text enthaltenen HTML-Dokuments mit dem in Python eingebauten html.parser erzeugt wurde.  

Initialisieren Sie nun eine Variable, die die Liste aller ausgewerteten Daten enthält.

quotes = []

Sie können nun soup verwenden, um Elemente aus dem DOM wie folgt zu extrahieren:  

quote_elements = soup.find_all('div', class_='quote')

Die Methode find_all() gibt die Liste aller <div>-HTML-Elemente aus, die durch die Klasse quote gekennzeichnet sind. Mit anderen Worten: Diese Codezeile entspricht der Anwendung des CSS-Selektors .quote, um die Liste der HTML-Elemente für Quotes auf der Seite abzurufen. Sie können dann über die Liste der quotes iterieren, um die Kursdaten wie unten beschrieben abzurufen:

for quote_element in quote_elements:
    # extracting the text of the quote
    text = quote_element.find('span', class_='text').text
    # extracting the author of the quote
    author = quote_element.find('small', class_='author').text

    # extracting the tag <a> HTML elements related to the quote
    tag_elements = quote_element.find('div', class_='tags').find_all('a', class_='tag')

    # storing the list of tag strings in a list
    tags = []
    for tag_element in tag_elements:
        tags.append(tag_element.text)

Dank der Beautiful Soup Methode  find() können Sie das einzelne HTML-Element von Interesse extrahieren. Da es sich bei den mit dem Quote verbundenen Tags um mehrere handelt, sollten Sie sie in einer Liste speichern.

Dann können Sie diese Daten in ein Wörterbuch umwandeln und wie folgt an die quotes-Liste anhängen:  

quotes.append(
    {
        'text': text,
        'author': author,
        'tags': ', '.join(tags) # merging the tags into a "A, B, ..., Z" string
    }
)

Durch die Speicherung der extrahierten Daten in einem solchen Wörterbuchformat werden Ihre Daten leichter zugänglich und verständlich.

Sie haben gerade gelernt, wie Sie alle Kursdaten aus einer einzigen Seite extrahieren können. Denken Sie aber daran, dass die Ziel-Webseite aus mehreren Webseiten besteht. Im Folgenden erfahren Sie, wie Sie die gesamte Webseite crawlen können.

Implementierung der Crawling-Logik

Am unteren Ende der Startseite finden Sie ein <a>-HTML-Element „Next →“, das auf die nächste Seite der Ziel-Webseite weiterleitet. Dieses HTML-Element ist auf allen Seiten enthalten, außer auf der letzten. Ein solches Szenario ist bei jeder paginierten Webseite üblich.    

Das „Next“-Element
Das „Next →“-Element

Wenn Sie dem Link im <a>-HTML-Element „Next →“ folgen, können Sie problemlos durch die gesamte Webseite navigieren. Beginnen wir also mit der Startseite und sehen wir uns an, wie man die einzelnen Seiten der Ziel-Webseite durchgeht. Sie müssen nur nach dem HTML-Element .next <li> suchen und den relativen Link zur nächsten Seite extrahieren.  

Sie können die Crawling-Logik wie folgt implementieren:

# the url of the home page of the target website
base_url = 'https://quotes.toscrape.com'

# retrieving the page and initializing soup...

# getting the "Next →" HTML element
next_li_element = soup.find('li', class_='next')

# if there is a next page to scrape
while next_li_element is not None:
    next_page_relative_url = next_li_element.find('a', href=True)['href']

    # getting the new page
    page = requests.get(base_url + next_page_relative_url, headers=headers)

    # parsing the new page
    soup = BeautifulSoup(page.text, 'html.parser')

    # scraping logic...

    # looking for the "Next →" HTML element in the new page
    next_li_element = soup.find('li', class_='next')

Dieser „Wo-Zyklus“ durchläuft jede Seite, bis es keine nächste Seite mehr gibt. Insbesondere extrahiert er die relative URL der nächsten Seite und verwendet sie, um die URL der nächsten zu crawlenden Seite zu erstellen. Dann wird die nächste Seite heruntergeladen. Anschließend wird sie gecrawlt und die Logik wiederholt.  

Sie haben gerade gelernt, wie man eine Crawling-Logik implementiert, um eine ganze Webseite zu scrapen. Anschließend können Sie die extrahierten Daten in ein nützlicheres Format umwandeln.

Konvertierung der Daten in das CSV-Format

 

Sehen wir uns an, wie man die Liste der Wörterbücher, die die gecrawlten Quote-Daten enthalten, in eine CSV-Datei umwandelt. Das erreichen Sie mit den folgenden Zeilen:

import csv

# scraping logic...

# reading  the "quotes.csv" file and creating it
# if not present
csv_file = open('quotes.csv', 'w', encoding='utf-8', newline='')

# initializing the writer object to insert data
# in the CSV file
writer = csv.writer(csv_file)

# writing the header of the CSV file
writer.writerow(['Text', 'Author', 'Tags'])

# writing each row of the CSV
for quote in quotes:
    writer.writerow(quote.values())

# terminating the operation and releasing the resources
csv_file.close()

Dieses Snippet schreibt die in der Liste der Wörterbücher enthaltenen Quotes-Daten in eine quotes.csv-Datei. Beachten Sie, dass csv Teil der Python-Standardbibliothek ist. Sie können es also importieren und verwenden, ohne eine zusätzliche Abhängigkeit zu installieren. Das heißt konkret, dass Sie einfach eine Datei mit open() erstellen müssen. Dann können Sie es mit der Funktion writerow() aus dem Writer -Objekt der csv -Bibliothek ausfüllen. Dadurch wird jedes Quote-Wörterbuch als CSV-formatierte Zeile in die CSV-Datei geschrieben.

Sie sind von Rohdaten einer Webseite zu strukturierten Daten in einer CSV-Datei übergegangen. Der Prozess der Datenextraktion ist abgeschlossen, und Sie können nun einen Blick auf den gesamten Python Web Scraper werfen.

Alles zusammenfügen

 

So sieht das komplette Python-Skript zum Web Scraping aus:

import requests
from bs4 import BeautifulSoup
import csv

def scrape_page(soup, quotes):
    # retrieving all the quote <div> HTML element on the page
    quote_elements = soup.find_all('div', class_='quote')

    # iterating over the list of quote elements
    # to extract the data of interest and store it
    # in quotes
    for quote_element in quote_elements:
        # extracting the text of the quote
        text = quote_element.find('span', class_='text').text
        # extracting the author of the quote
        author = quote_element.find('small', class_='author').text

        # extracting the tag <a> HTML elements related to the quote
        tag_elements = quote_element.find('div', class_='tags').find_all('a', class_='tag')

        # storing the list of tag strings in a list
        tags = []
        for tag_element in tag_elements:
            tags.append(tag_element.text)

        # appending a dictionary containing the quote data
        # in a new format in the quote list
        quotes.append(
            {
                'text': text,
                'author': author,
                'tags': ', '.join(tags)  # merging the tags into a "A, B, ..., Z" string
            }
        )

# the url of the home page of the target website
base_url = 'https://quotes.toscrape.com'

# defining the User-Agent header to use in the GET request below
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36'
}

# retrieving the target web page
page = requests.get(base_url, headers=headers)

# parsing the target web page with Beautiful Soup
soup = BeautifulSoup(page.text, 'html.parser')

# initializing the variable that will contain
# the list of all quote data
quotes = []

# scraping the home page
scrape_page(soup, quotes)

# getting the "Next →" HTML element
next_li_element = soup.find('li', class_='next')

# if there is a next page to scrape
while next_li_element is not None:
    next_page_relative_url = next_li_element.find('a', href=True)['href']

    # getting the new page
    page = requests.get(base_url + next_page_relative_url, headers=headers)

    # parsing the new page
    soup = BeautifulSoup(page.text, 'html.parser')

    # scraping the new page
    scrape_page(soup, quotes)

    # looking for the "Next →" HTML element in the new page
    next_li_element = soup.find('li', class_='next')

# reading  the "quotes.csv" file and creating it
# if not present
csv_file = open('quotes.csv', 'w', encoding='utf-8', newline='')

# initializing the writer object to insert data
# in the CSV file
writer = csv.writer(csv_file)

# writing the header of the CSV file
writer.writerow(['Text', 'Author', 'Tags'])

# writing each row of the CSV
for quote in quotes:
    writer.writerow(quote.values())

# terminating the operation and releasing the resources
csv_file.close()

Wie Sie hier gelernt haben, können Sie in weniger als 100 Zeilen Code einen Web Scraper erstellen. Dieses Python-Skript ist in der Lage, eine ganze Webseite zu crawlen, automatisch alle Daten zu extrahieren und sie in eine CSV-Datei zu konvertieren.

Herzlichen Glückwunsch! Sie haben gerade gelernt, wie man mit den Bibliotheken Requests und Beautiful Soup einen Python Web Scraper erstellt!

Ausführen des Web Scraping Python-Skripts

 

Wenn Sie ein PyCharm-Benutzer sind, führen Sie das Skript aus, indem Sie auf die Schaltfläche unten klicken:

Schaltfläche „Ausführen“ in PyCharm
Die PyCharm-Schaltfläche „Ausführen“

Andernfalls starten Sie den folgenden Python-Befehl im Terminal innerhalb des Projektverzeichnisses:

python scraper.py

Warten Sie, bis der Prozess beendet ist. Sie haben nun Zugriff auf eine quotes.csv-Datei. Öffnen Sie die Datei. Sie sollte die folgenden Daten enthalten:  

Die extrahierte quotes.csv-Datei
Die quotes.csv-Datei

Et voilà! Sie haben nun alle 100 Quotes, die in der Ziel-Webseite enthalten sind, in einer CSV-Datei!

Fazit

In diesem Tutorial haben Sie gelernt, was Web Scraping ist, was Sie für den Einstieg in Python brauchen und welches die besten Python-Bibliotheken für Web Scraping sind. Dann haben Sie gesehen, wie man Beautiful Soup und Requests verwendet, um eine Web-Scraping-Anwendung anhand eines realen Beispiels zu erstellen. Wie Sie wissen, sind für Web Scraping in Python nur ein paar Zeilen Code erforderlich.

Web Scraping ist jedoch mit einigen Herausforderungen verbunden. Insbesondere Anti-Bot- und Anti-Scraping-Technologien werden immer beliebter. Aus diesem Grund benötigen Sie ein fortschrittliches und umfassendes automatisiertes Web-Scraping-Tool, das von Bright Data bereitgestellt wird.  

Um zu vermeiden, dass Sie blockiert werden, empfehlen wir Ihnen, einen Proxy aus den verschiedenen von Bright Data angebotenen Proxy-Services auszuwählen, der auf Ihren Anwendungsfall zugeschnitten ist.  

FAQ

ウェブスクレイピングやクローリングは、データサイエンスの一部ですか?  

はい。ウェブスクレイピングやクローリングは、データサイエンスの大きな分野の一部です。スクレイピングやクローリングは、構造化および非構造化データから得られる他のすべての副産物の基礎となるものです。これには、アナリティクス、アルゴリズムモデル/アウトプット、インサイト、「応用可能な知識」などが含まれます。

Pythonでウェブサイトから特定のデータをスクレイピングする方法は?
 

Pythonでウェブサイトからデータをスクレイピングするには、ターゲットURLのページを調査し、抽出したいデータを特定し、データ抽出コードを記述して実行し、最後にデータを希望の形式で保存する必要があります。

  Pythonでウェブスクレイパーを作成する方法は?   Pythonデータスクレイパーを作成する最初のステップは、文字列メソッドを使ってウェブサイトのデータを解析し、次にHTMLパーサーを使ってウェブサイトのデータを解析し、最後に必要なフォームおよびウェブサイトコンポーネントと対話することです。

Gal El Al of Bright Data
Gal El Al | Director of Support

Head of Support at Bright Data with a demonstrated history of working in the computer and network security industry. Specializing in billing processes, technical support, quality assurance, account management, as well as helping customers streamline their data collection efforts while simultaneously improving cost efficiency.

Das könnte Sie auch interessieren

What is a web crawler featured image

Was ist ein Webcrawler?

Webcrawler sind ein wichtiger Teil der Infrastruktur des Internets. In diesem Artikel geht es um Folgendes: Webcrawler – Definition Ein Webcrawler ist ein Software-Roboter, der das Internet durchsucht und die gefundenen Daten herunterlädt. Die meisten Webcrawler werden von Suchmaschinen wie Google, Bing, Baidu und DuckDuckGo betrieben. Suchmaschinen wenden ihre Suchalgorithmen auf die gesammelten Daten […]
Search by image API hero image

Screen Scraping im Detail: Ein Leitfaden für alle in der digitalen Welt

Wenn Sie im Bereich SEO und E-Commerce tätig sind, haben Sie wahrscheinlich darüber nachgedacht, wie Sie bequem an die Daten aller Wettbewerber auf dem Markt gelangen können.

Die 9 größten Mythen über Web Scraping

Web Scraping hat einen schlechten Ruf, weil es für böswillige Zwecke verwendet werden kann. Aber Web Scraping kann auch für gute Zwecke eingesetzt werden! In diesem Blogbeitrag räumen wir mit einigen weit verbreiteten Mythen über Web-Scraping auf, damit Sie sehen können, wie diese Technik für gute Zwecke eingesetzt werden kann
Web scraping with PHP

Web Scraping mit PHP: eine Schritt-für-Schritt-Anleitung

Lernen Sie, wie Sie Ihren eigenen einfachen Web Scraper in PHP von Grund auf erstellen und programmieren können.

Anleitung zum Web Scraping mit Java

Sie wissen nicht, welche unterstützenden Tools Sie herunterladen müssen, um eine ideale Java-Umgebung für die Datenerfassung zu schaffen? Ihnen ist nicht klar, wie man Datenpunkte aus HTML extrahiert/parst und dann ins CSV-Format konvertiert? Dieser Beitrag hilft Ihnen, diese Fragen zu klären.
What is alternative data

Was ist Alternative Data und wie ist es zu verwenden?

Investmenthäuser überwachen Daten aus sozialen Medien, Suchmaschinen sowie Daten über die Verbrauchernachfrage und erhalten Echtzeitwarnungen, wenn Unternehmen aus ihrem Portfolio erwähnt werden. So geht’s.
How to set up a proxy server on Windows 10

So richten Sie einen Proxy Server unter Windows 10 ein

Diese Anleitung führt Sie durch die erforderlichen Schritte zur Konfiguration eines Proxy Servers in Windows 10, einschließlich Screenshots sowie wichtiger Tipps zur Auswahl eines Proxys
What is a proxy server & how does it work?

Was ist ein Proxy-Server und wie funktioniert er?

In diesem Leitfaden finden Sie alles, was Sie über Proxy-Server wissen müssen, einschließlich ihrer Funktionsweise, der verschiedenen derzeit verfügbaren Proxy-Typen und eines Vergleichs zwischen Proxy-Servern und VPNs, damit Ihr Unternehmen das richtige Tool für Ihr Unternehmen auswählen kann.