Das Beispiel, das wir für Webscraping verwendet haben, verwendet die Wikipedia-Seite über Land- und Abhängigkeitspopulationen, die eine schöne Tabelle mit Ländern mit Rängen, Bevölkerungen und kleinen Flaggen enthält. Um zu üben, versuchen Sie, die Tabelle zu kratzen, den Ländernamen zu extrahieren, die Bild-URL des zugeordneten Flags zu kratzen, die Flag-Bilddatei herunterzuladen und den extrahierten Ländernamen zu verwenden, um die Datei zu benennen. Fügen Sie Ihre Lösung in den Kommentarbereich ein! In diesem Tutorial werden Dateien mit einer Windows-Funktion namens URLDownloadToFile heruntergeladen. Die URLDownloadToFile-Funktion ist Teil der Windows-Bibliothek surlmon. Bevor wir sie verwenden können, müssen wir die Funktion deklarieren und eine Verbindung über VBA herstellen. Wir können dies tun, indem wir diese Codezeile an der Spitze eines VBA-Moduls platzieren: Bis jetzt bin ich sicher, dass sich einige von Ihnen fragen könnten, ob es eine Möglichkeit gibt, diese Routineaufgabe zu automatisieren und Zeit zu sparen. Nun, ich habe einige gute Nachrichten für Sie: Excel und VBA können Ihnen helfen, all diese manuellen Verfahren zu vermeiden. Nachfolgend finden Sie eine Beispielarbeitsmappe, die die URLs der Dateien, die Sie herunterladen möchten, als Eingabe verwendet. Wenn Sie dann einfach den Download-Ordner auswählen und die Schaltfläche “Dateien herunterladen” drücken, wird jede Datei in den ausgewählten Ordner heruntergeladen.

Excel kann ein großartiges Werkzeug sein, um die Daten des Internets zu nutzen. Wenn Sie mehr auf das Thema Web Scraping sind, empfehle ich Ihnen, einen Blick auf das Excel Scrape HTML Add-In zu werfen, mit dem Sie HTML-Inhalte von den meisten Webseiten einfach herunterladen können, ohne auf VBA zurückzugreifen. Falls Browser-Simulation erforderlich ist, lesen Sie auf meiner Simple-Klasse für die Verwendung von IE-Automatisierung in VBA. Um das Bild mit VBA herunterzuladen, können wir eine kurze Unterroutine wie diese ausführen: Wenn Sie mehrere hundert Dateien pro Lauf herunterladen, werden Sie verfolgen wollen, welche Dateien fehlen. Eine einfache Möglichkeit zum Implementieren eines Timeouts besteht darin, den URLDownloadToFile-Rückgabewert zu überprüfen und ein paar Sekunden zu warten, wenn es sich nicht um das gewünschte Ergebnis handelt. Wenn er mehr als die angegebene Zeit hängt, wechseln Sie zur nächsten URL, und markieren Sie den Download dieser Datei als fehlgeschlagen. In Bezug auf Ihre andere Frage, wenn Sie eine (benutzerdefinierte) Änderung an dieser Excel-Datei benötigen, senden Sie mir eine E-Mail mit dem Kontaktformular der Website. Ich werde versuchen, Ihnen so schnell wie möglich zu antworten.

Wenn auf eine Datei nicht über einen normalen Link zugegriffen/heruntergeladen werden kann, ist es wahrscheinlich schwierig, sie mit diesem Code herunterzuladen. Fyi alle diese Dateien sind pdf-Dateien, aber Namen sind bit tricy z.B.p5gCVzZb-WAZ8mxx , xh4aNrBD-WAZ8q4x Der Zielordner mit sechs heruntergeladenen Bildern von Städten Ein Rückgabewert von Null (0) bedeutet, dass der Download erfolgreich gestartet wurde. Abgesehen von einer Verbindungsunterbrechung oder einem Speicherfehler beim Herunterladen einer gigantischen Datei sollte sie beendet werden.