Jak przeprowadzić web scraping za pomocą JavaScript: kompleksowy przewodnik
Chcesz nauczyć się scrapowania stron internetowych za pomocą JavaScriptu, ale nie wiesz, od czego zacząć? Nie martw się.
W tym blogu dostarczymy Ci wszystkich niezbędnych informacji, których potrzebujesz, aby rozpocząć scrapowanie JavaScriptu. Dodatkowo przeprowadzimy Cię krok po kroku przez proces scrapowania strony internetowej za pomocą JavaScriptu z Puppeteerem.
Zaczynajmy.
Czym jest scrapowanie JavaScript?
W dzisiejszej erze cyfrowej JavaScript do scrapowania stron internetowych stał się umiejętnością niezbędną nie tylko dla programistów i entuzjastów danych, ale także dla marketerów, którzy muszą się jej nauczyć.
W swojej istocie, scrapowanie JavaScriptu polega na wykorzystaniu bibliotek lub narzędzi opartych na JavaScript do wyodrębniania cennych danych ze stron internetowych. Możesz natomiast używać innych języków programowania, takich jak Python do scrapowania witryny. Scraping JavaScript jest szczególnie przydatny do gromadzenia informacji ze stron internetowych, które do wyświetlania treści wykorzystują dużo JavaScript.
Kiedy scrapujesz stronę internetową za pomocą JavaScript, w zasadzie piszesz kod automatyzujący proces zbierania danych z przeglądarki internetowej. To potężna metoda ekstrakcji danych, umożliwiająca gromadzenie ogromnych ilości informacji w stosunkowo krótkim czasie.
Niezależnie od tego, czy chcesz analizować trendy rynkowe, gromadzić informacje o konkurencji, czy zbierać dane w celu pozyskiwania potencjalnych klientów dla swojej firmy, scrapowanie danych za pomocą JavaScript może być nieocenionym narzędziem. Ta metoda wykorzystuje możliwości JavaScript, języka głęboko osadzonego w tworzeniu stron internetowych, do nawigacji, wybierania i wyodrębniania danych z różnych stron internetowych.
Teraz, gdy rozumiemy, na czym polega scrapowanie stron internetowych za pomocą JavaScript, dowiedzmy się, w jaki sposób można używać JavaScript do scrapowania witryny.
3 typowe sposoby scrapowania witryny za pomocą JavaScriptu
Istnieje wiele sposobów scrapowania witryny za pomocą JavaScriptu. Ale który z nich wybrać? Odpowiedź na to pytanie zależy od Twoich wymagań dotyczących scrapowania. W tej sekcji wyjaśnimy trzy popularne sposoby, których ludzie używają do scrapowania stron internetowych za pomocą JavaScriptu.
Cheerio dla prostych statycznych witryn
Czy widziałeś witryny HTML, których treść szybko się ładuje w początkowym żądaniu? Cóż, to dlatego, że nie zawierają one treści o dużej objętości, takich jak filmy czy złożone animacje. Podczas korzystania z takich statycznych witryn internetowych, korzystając z Cheerio to idealny wybór.
Pobierając surowy kod HTML strony za pomocą klienta HTTP, Cheerio umożliwia łatwe przeglądanie i manipulowanie modelem DOM.
Jest lekki i szybki, głównie dlatego, że nie musi obciążać całego środowiska przeglądarki. Jak wspomnieliśmy, ta metoda doskonale sprawdza się w przypadku prostych, statycznych witryn, w których dane są łatwo dostępne w kodzie HTML.
Puppeteer do scrapowania dynamicznej zawartości
Jeśli masz do czynienia z bardziej złożoną witryną, zawierającą dynamiczną treść, taką jak filmy i obrazy, lub witrynami z dużą ilością kodu JavaScript, w których treść jest ładowana dynamicznie, najlepszym wyborem będzie Puppeteer, biblioteka Node.
Puppeteer używa przeglądarki bezgłowej, przeglądarki internetowej bez graficznego interfejsu użytkownika (GUI), do interakcji ze stronami internetowymi. Oznacza to, że może emulować działania użytkownika, takie jak klikanie przycisków lub przewijanie, co jest niezbędne do uzyskania dostępu do treści, która pojawia się jako wynik tych interakcji.
Puppeteer jest potężnym narzędziem do scrapowania nowoczesnych aplikacji internetowych, które opierają się na technologii AJAX i wymagają pełnego środowiska przeglądarki do wykonywania kodu JavaScript i renderowania zawartości.
Zbieranie danych ze strony internetowej za pomocą jQuery
Czasami może nie być konieczne pobieranie dużych ilości danych. Może być konieczne szybkie wyodrębnienie informacji, na przykład pobieranie określonych adresów e-mail. W takich przypadkach jQuery może być przydatnym narzędziem. Chociaż jest to skrypt po stronie klienta uruchamiany w przeglądarce, możesz użyć jQuery do łatwego wybierania i wyodrębniania danych ze stron internetowych.
Ta metoda jest szczególnie przydatna w przypadku zadań scrapowania ad-hoc. Wystarczy otworzyć konsolę, napisać kilka linijek kodu jQuery i wyodrębnić potrzebne informacje. Jednak to podejście nie nadaje się do zadań scrapowania na dużą skalę lub zautomatyzowanych.
Każda z tych metod ma swój własny zestaw zalet i nadaje się do różnych potrzeb scrapowania. Niezależnie od tego, czy chodzi o jednorazową ekstrakcję danych, czy złożone zadanie scrapowania z dynamiczną zawartością, JavaScript oferuje solidne i elastyczne rozwiązanie.
W tym przewodniku zajmiemy się jednak scrapowaniem stron internetowych w JavaScript za pomocą Puppeteer. Przeprowadzimy Cię krok po kroku przez proces scrapowania stron internetowych za pomocą JavaScript i Puppeteer.
Jak wykonać scrapowanie stron internetowych za pomocą JavaScript Puppeteer?
Scraping stron internetowych może czasami wydawać się zniechęcający, ale zadanie staje się 10 razy łatwiejsze, jeśli znasz odpowiednie narzędzia. W tej sekcji Dowiedz się, jak używać Puppeteer, biblioteki Node do scrapowania treści z sieci. Puppeteer to idealne narzędzie JavaScript do scrapowania dynamicznej treści.
Podzielmy ten proces na trzy proste kroki, które pokażą Ci, jak pobierać obrazy z wyników wyszukiwania Google na hasło „szczęśliwy pies”. Zaczynajmy!
Krok 1: Tworzenie nowego katalogu i instalowanie programu Puppeteer
Najpierw najważniejsze: skonfigurujmy środowisko naszego projektu. Najpierw utwórzmy nowy katalog projektu i zainicjujmy go.
Następnie zainstaluj Puppeteer, którego będziemy używać do scrapowania. Otwórz konsolę i wykonaj następujące polecenia:
-
Aby utworzyć nowy katalog:mkdir web-scraping-puppeteer
-
Aby przenieść do katalogu: cd web-scraping-puppeteer
-
Inicjowanie nowego projektu Node.js: npm init -y
-
Instalowanie Puppeteer: npm install puppeteer
Krok 2: Pisanie początkowego kodu
Teraz napiszmy początkowy kod, aby uruchomić przeglądarkę, przejść do Google Grafika i wyszukać frazę „happy do” g". Użyjemy Puppeteer, aby otworzyć nowe okno przeglądarki, ustawić obszar widoku i nawiązać interakcję z elementami strony.
Oto kod dla tego kroku:
Objaśnienie kodu:
-
const puppeteer = require('puppeteer');
-
Pamiętasz, że w pierwszym kroku zainstalowaliśmy Puppeteer w naszym systemie? Cóż, ta linia importuje bibliotekę Puppeteer do skryptu. Następnie pozwala nam wykorzystać jej funkcjonalności do sterowania przeglądarką bez interfejsu użytkownika.
-
-
(async()={...})();
-
Ten wiersz zadeklaruje funkcję asynchroniczną. Ta funkcja będzie obsługiwać zadania scrapowania stron internetowych. Funkcje asynchroniczne pozwolą nam Poczekaj, aż pewne działania (np. załadowanie strony) zostaną ukończone, zanim przejdziesz do następnego kroku, który jest kluczowy w scrapowaniu stron internetowych.
-
-
const browser = await puppeteer.launch();
-
Ten wiersz informuje program Puppeteer o konieczności rozpoczęcia nowej sesji przeglądarki. Słowo kluczowe wait służy do zapewnienia, że przeglądarka zostanie w pełni uruchomiona przed wykonaniem skryptu.
-
-
const page = await browser.newPage();
-
Po uruchomieniu przeglądarki to polecenie otwiera nową stronę (lub kartę) w przeglądarce.
-
-
await page.goto('https://www.google.com/imghp?hl=pl');
-
Skrypt przekierowuje otwartą stronę na określony adres URL, który w tym przypadku jest stroną wyszukiwania Google Grafika. Słowo kluczowe wait zapewnia zakończenie nawigacji przed kontynuowaniem.
-
-
oczekiwanie na page.setViewport({szerokość: 1080, wysokość: 1024});
-
Ustawia wymiary obszaru widoku (widocznej sekcji strony). Jest to ważne w przypadku zrzutów ekranu lub stron, których układ zmienia się w zależności od rozmiaru ekranu.
-
-
await page.type('textarea[name="q"]', 'szczęśliwy piesek');
-
To polecenie symuluje wpisywanie tekstu 'happy dog' w polu wprowadzania na stronie, a konkretnie tekstu z atrybutem name 'q' (który w Google Grafika jest polem wyszukiwania).
-
-
oczekiwanie page.click('button[type="submit"]');
-
Ta linia symuluje kliknięcie przycisku „Wyślij” formularza, co powoduje uruchomienie wyszukiwania.
-
-
await page.waitForNavigation();
-
Po kliknięciu przycisku Prześlij to polecenie czeka na zakończenie nawigacji po stronie (tj. czeka na załadowanie wyników wyszukiwania).
-
-
oczekiwanie na browser.close();
-
Gdy wszystkie poprzednie kroki zostaną ukończone, to polecenie zamknie przeglądarkę.
-
Krok 3: Pobieranie obrazu przedstawiającego „szczęśliwego psa” z Google Grafika.
Teraz naszym celem jest wybranie obrazu, który chcemy zeskrobać, i zidentyfikowanie jego klasy, identyfikatora i źródłowego adresu URL wewnątrz bloku div.
Opcja Inspect pokaże Ci kontener div obrazu, który będzie miał swoją klasę, identyfikator i źródłowy adres URL, które musisz skopiować i uwzględnić w swoim kodzie.
Oto, jak wyglądałby pełny kod:
W tym kodzie:
-
Najpierw upewniamy się, że Puppeteer przechodzi do Google Images i wykonuje wyszukiwanie hasła „happy dog”.
-
Po załadowaniu wyników wybieramy wszystkie obrazy, które pasują do klasy '.sFlh5c.pT0Scc.iPVvYb'.
-
Następnie klikamy żądany obraz na liście, aby uruchomić podgląd.
-
Czekamy, aż załaduje się kontener podglądu (#islsp) i znajdujący się w nim duży obraz.
-
Na koniec wyodrębniamy atrybut src dużego obrazu, który zawiera jego adres URL.
W przypadku gdy się zastanawiasz, użyliśmy “if” i “else” w tym kodzie aby zapewnić to to Zwraca „Nie znaleziono obrazów o określonej klasie” w przypadku niewłaściwej klasy. W przeciwnym razie czasami kod ulega uszkodzeniu.
Teraz z powodzeniem nauczyłeś się, jak pobierać dane ze strony internetowej za pomocą JavaScriptu i Puppeteer. Możesz użyć tego samego podejścia do pobierania wielu obrazów z dowolnej strony internetowej.
Niektóre witryny internetowe nie pozwalają jednak na pobieranie ich treści. Stosują techniki zapobiegające pobieraniu danych co utrudnia wykonanie zadania. Albo, co gorsza, możesz zostać całkowicie zablokowany.
Ale istnieje rozwiązanie tego problemu. Przejdź do następnej sekcji, aby dowiedzieć się więcej o tym jak możesz Scrapinguj strony internetowe bez ich wykrycia lub zablokowania.
Użyj AdsPower do przeglądania w trybie niezauważonym
Jeśli chcesz dodać warstwę ochrony podczas scrapowania danych za pomocą JavaScript, AdsPower to najlepsza przeglądarka z funkcją antywykrywania, z której możesz skorzystać.AdsPower Przeglądarka zapewnia płynne korzystanie ze scrapowania stron internetowych, skutecznie unikając wyzwań antyscrapingowych.
Możesz go również używać do tworzenia wielu profili użytkowników i zachowania anonimowości w sieci.Zarejestruj się już dziś, aby zapewnić sobie bezpieczeństwo w przyszłości.
Podsumowanie!
Nauka scrapowania danych z internetu za pomocą JavaScript otwiera przed Tobą nowe możliwości. Niezależnie od tego, czy chodzi o projekty osobiste, czy analizę zawodową, narzędzia takie jak Puppeteer sprawiają, że staje się ono dostępne i wydajne.
Wykorzystaj technikę, o której mowa w tym blogu i zbierz potrzebne Ci informacje. Nie zapomnij też użyć AdsPower do bezpiecznego zgarniania danych.

Ludzie czytają także
- Dlaczego moje konto Coinbase jest ograniczone? Oto rozwiązania
Dlaczego moje konto Coinbase jest ograniczone? Oto rozwiązania
Zastanawiasz się, dlaczego konto Coinbase jest ograniczone? Dowiedz się, dlaczego tak się dzieje, jak długo obowiązują ograniczenia i poznaj 5 kroków, aby szybko naprawić ograniczenia na koncie Coinbase.
- Jak zarabiać na wątkach: kompletny przewodnik dla początkujących
Jak zarabiać na wątkach: kompletny przewodnik dla początkujących
Zastanawiasz się, jak zarabiać na Threads? Skorzystaj z tego przewodnika krok po kroku dla twórców, aby poznać zasady monetyzacji, wskazówki dla obserwujących i 5 skutecznych sposobów.
- Efektywne zarządzanie wieloma kontami w programie Outlook: logowanie zbiorcze, brak konfliktów
Efektywne zarządzanie wieloma kontami w programie Outlook: logowanie zbiorcze, brak konfliktów
Masz problemy z wieloma kontami w Outlooku? Logowanie grupowe, brak konfliktów i 90% oszczędność czasu. Profesjonalny poradnik zarządzania Outlookiem + bezpieczny
- Czy Twoja strona internetowa została usunięta przez Google? Jak naprawić i zapobiec problemowi z 2025 roku?
Czy Twoja strona internetowa została usunięta przez Google? Jak naprawić i zapobiec problemowi z 2025 roku?
Dowiedz się, dlaczego Google może usunąć Twoje zaindeksowane strony z wyników wyszukiwania i jak to naprawić. Poznaj wskazówki SEO i dowiedz się, jak AdsPower pomaga zwiększyć interakcję i pozycję w rankingach.
- Jak naprawić błąd „Feedback_Required” na Instagramie (poradnik 2025)
Jak naprawić błąd „Feedback_Required” na Instagramie (poradnik 2025)
Dowiedz się, co jest przyczyną błędu „feedback_required” na Instagramie, jak go szybko naprawić i jak AdsPower pomaga zapobiegać temu zjawisku podczas zarządzania wieloma kontami.