wollen helfen? Hier sind Ihre Möglichkeiten:","Crunchbase","Über uns","Vielen Dank an alle für die großartige Unterstützung!","Schnelle Links","Partnerprogramm","Prämie","ProxyScrape Premium-Testversion","Proxy-Typen","Proxy-Länder","Proxy-Einsatzfälle","Wichtig","Cookie-Politik","Haftungsausschluss","Datenschutzbestimmungen","Bedingungen und Konditionen","Soziale Medien","Facebook","LinkedIn","Twitter","Quora","Telegramm","Diskord","\n © Copyright 2024 - Thib BV | Brugstraat 18 | 2812 Mechelen | Belgien | VAT BE 0749 716 760\n"]}
Web Scraping kann als Methode zur Sammlung und Umstrukturierung von Daten aus Websites definiert werden. Es kann auch als programmatischer Ansatz zur automatisierten Beschaffung von Website-Daten definiert werden. Sie möchten zum Beispiel die E-Mail-IDs aller Personen extrahieren, die einen Facebook-Post kommentiert haben. Dies können Sie tun, indem Sie
Web Scraping kann als Methode zur Sammlung und Umstrukturierung von Daten aus Websites definiert werden. Es kann auch als programmatischer Ansatz zur automatisierten Beschaffung von Website-Daten definiert werden. Ein Beispiel: Sie möchten die E-Mail-IDs aller Personen extrahieren, die einen Facebook-Post kommentiert haben. Dazu gibt es zwei Methoden. Erstens können Sie mit dem Cursor auf die E-Mail-Adressen einer beliebigen Person zeigen. Dann können Sie sie kopieren und in eine Datei einfügen. Diese Methode wird als manuelles Scraping bezeichnet. Was aber, wenn Sie 2000 E-Mail-IDs sammeln wollen? Mit Hilfe eines Web-Scraping-Tools können Sie alle E-Mail-IDs in 30 Sekunden extrahieren, anstatt 3 Stunden, wenn Sie manuelles Scraping verwenden.
Sie können Web-Scraping-Tools verwenden, um Informationen aus Websites zu extrahieren. Sie müssen nur wissen, wie man klickt, und es sind keine Programmierkenntnisse erforderlich. Diese Tools sind ressourcenschonend und sparen Zeit und Kosten. Sie können je nach Bedarf Millionen von Seiten scrapen, ohne sich Gedanken über die Netzwerkbandbreite zu machen. Einige Websites setzen Anti-Bots ein, die Scraper davon abhalten, Daten zu sammeln. Gute Web-Scraping-Tools verfügen jedoch über integrierte Funktionen, um diese Tools zu umgehen und ein nahtloses Scraping-Erlebnis zu bieten.
Python verfügt über ausgezeichnete Werkzeuge zum Auslesen von Daten aus dem Web. Sie können zum Beispiel die requests-Bibliothek importieren, um Inhalte von einer Webseite abzurufen, und bs4(BeautifulSoup), um die relevanten Informationen zu extrahieren. Sie können die folgenden Schritte befolgen, um Web-Scraping in Python durchzuführen. Wir werden Informationen von dieser Website extrahieren.
Sie müssen die Anforderungsbibliothek importieren, um den HTML-Code der Website abzurufen.
Einfuhranträge
Sie müssen eine GET-Anfrage an die Website stellen. Sie können dies tun, indem Sie die URL in die Funktion requests.get() einfügen.
r = requests.get('http://www.cleveland.com/metro/index.ssf/2017/12/case_western_reserve_university_president_barbara_snyders_base_salary_and_bonus_pay_tops_among_private_colleges_in_ohio.html')
Extrahieren Sie den Inhalt der Website mit r.content. Es gibt den Inhalt der Website in Bytes an.
c = r.Inhalt
Sie müssen die BeautifulSoup-Bibliothek importieren, da sie das Scrapen von Informationen aus Webseiten erleichtert.
von bs4 importieren BeautifulSoup
Sie müssen ein BeautifulSoup-Objekt aus dem Inhalt erstellen und es mit verschiedenen Methoden analysieren.
soup = BeautifulSoup(c)
print(soup.get_text())
Sie erhalten die Ausgabe (es ist nur ein Teil) in etwa so.
Wir müssen die richtigen CSS-Selektoren finden, da wir unsere gewünschten Daten extrahieren müssen. Wir können den Hauptinhalt der Webseite mit der Methode .find() des Soup-Objekts finden.
main_content = soup.find('div', attrs = {'class': 'entry-content'})
Wir können die Informationen als Text aus der Tabelle abrufen, indem wir das Attribut .text der Soup verwenden.
Inhalt = main_content.find('ul').text
print(inhalt)
Wir haben den Text der Tabelle als Zeichenkette abgerufen. Die Informationen werden jedoch von großem Nutzen sein, wenn wir die spezifischen Teile der Textzeichenfolge extrahieren. Um diese Aufgabe zu erfüllen, müssen wir uns mit regulären Ausdrücken beschäftigen.
Reguläre Ausdrücke (RegEx) sind eine Folge von Mustern, die ein Suchmuster definieren. Die Grundidee ist die folgende:
Angenommen, wir wollen die folgenden Informationen aus der Texttabelle extrahieren.
Sie können die drei Informationen mit den unten aufgeführten Schritten extrahieren.
Importieren Sie re, und um die Gehälter zu extrahieren, müssen Sie ein Gehaltsmuster erstellen. Verwenden Sie die Methode re.compile(), um ein als String übergebenes Muster eines regulären Ausdrucks in ein RegEx-Musterobjekt zu kompilieren. Außerdem können Sie pattern.findall() verwenden, um alle Übereinstimmungen zu finden und sie als eine Liste von Strings zurückzugeben. Jede Zeichenkette steht für eine Übereinstimmung.
re importieren
salary_pattern = re.compile(r'\$.+')
gehalt = gehalt_muster.findall(inhalt)
Wiederholen Sie das gleiche Verfahren, um die Namen der Hochschulen zu extrahieren. Erstellen Sie ein Muster und extrahieren Sie die Namen.
school_pattern = re.compile(r'(?:,|,\s)([A-Z]{1}.*?)(?:\s\(|:|,)')
schools = school_pattern.findall(content)
print(schools)
print(salaries)
Wiederholen Sie das gleiche Verfahren, um die Namen der Präsidenten zu extrahieren. Erstellen Sie ein Muster und extrahieren Sie die gewünschten Namen.
name_pattern = re.compile(r'^([A-Z]{1}.+?)(?:,)', flags = re.M)
names = name_pattern.findall(content)
print(names)
Die Gehälter sehen unübersichtlich aus und sind nicht verständlich. Daher verwenden wir das Listenverständnis von Python, um die String-Gehälter in Zahlen zu konvertieren. Wir werden String-Slicing, Split und Join sowie List Comprehension verwenden, um die gewünschten Ergebnisse zu erzielen.
salaries = ['$876,001', '$543,903', '$2453,896']
[int(''.join(s[1:].split(','))) for s in salaries]
Die Ausgabe ist wie folgt:
Datenvisualisierung hilft Ihnen, die Daten visuell zu verstehen, so dass Trends, Muster und Korrelationen aufgedeckt werden können. Sie können eine große Datenmenge in Grafiken, Diagramme und andere visuelle Darstellungen übersetzen, um Ausreißer zu identifizieren und wertvolle Erkenntnisse zu gewinnen.
Wir können matplotlib verwenden, um die Daten zu visualisieren, wie unten gezeigt.
Importieren Sie die erforderlichen Bibliotheken wie unten dargestellt.
import pandas as pd
import matplotlib.pyplot as plt
Erstellen Sie einen Pandas-Datenrahmen mit Schulen, Namen und Gehältern. Zum Beispiel können Sie die Schulen in einen Datenrahmen konvertieren als:
df_school = pd.DataFrame(schools)
print(df_school)
Die Ausgabe ist:
Das Gleiche gilt für die Gehälter und Namen.
Zur Visualisierung der Daten können wir ein Balkendiagramm wie unten dargestellt erstellen.
df.plot(kind='barh', x = 'Präsident', y = 'Gehalt')
Die Ausgabe ist wie folgt:
Web Scraping hilft Unternehmen, nützliche Informationen über Marktkenntnisse und Branchen zu gewinnen, um datengestützte Dienste anzubieten und datengesteuerte Entscheidungen zu treffen. Proxys sind wichtig, um Daten von verschiedenen Websites aus den folgenden Gründen effektiv zu scrapen.
Wissen Sie, wie viele Vollmachten Sie benötigen, um die oben genannten Vorteile zu erhalten? Sie können die benötigte Anzahl von Proxys mit dieser Formel berechnen:
Anzahl der Bevollmächtigten = Anzahl der Zugriffsanfragen / Crawl-Rate
Die Anzahl der Zugriffsanfragen hängt von den folgenden Parametern ab.
Andererseits wird die Crawl-Rate durch die Anzahl der Anfragen des Nutzers in einer bestimmten Zeitspanne begrenzt. Einige Websites lassen eine begrenzte Anzahl von Anfragen pro Benutzer zu, um zwischen automatisierten und menschlichen Benutzeranfragen zu unterscheiden.
Sie können Proxys in Python verwenden, indem Sie die folgenden Schritte ausführen.
Einfuhranträge
proxy = 'http://114.121.248.251:8080'
url = 'https://ipecho.net/plain'
page = requests.get(url,
proxies={"http": proxy, "https": proxy})
drucken(Seite.Text)
Die Ausgabe ist wie folgt:
Wir haben besprochen, dass wir Web-Scraping verwenden können, um Daten aus Websites zu extrahieren, anstatt sie manuell zu scrapen. Web Scraping ist ein kosteneffizienter und zeitsparender Prozess. Unternehmen nutzen es, um Webinformationen zu sammeln und umzustrukturieren, um datengestützte Entscheidungen zu treffen und wertvolle Erkenntnisse zu gewinnen. Die Verwendung von Proxys ist für sicheres Web-Scraping unerlässlich, da sie die ursprüngliche IP-Adresse des Benutzers vor der Ziel-Website verbergen. Sie können für das Web-Scraping Proxys in Rechenzentren oder in Privathaushalten verwenden. Bevorzugen Sie jedoch Proxys in Wohngebieten, da sie schnell sind und nicht leicht entdeckt werden können. Darüber hinaus können wir in Python reguläre Ausdrücke verwenden, um Zeichenketten zu finden oder abzugleichen. Das bedeutet, dass wir mit Hilfe regulärer Ausdrücke beliebige Zeichenkettenmuster aus einem Text extrahieren können. Wir haben auch gesehen, dass Datenvisualisierung große Datenmengen in Diagramme, Grafiken und andere visuelle Darstellungen umwandelt, die uns helfen, Anomalien zu erkennen und nützliche Trends in den Daten zu identifizieren.