top of page
  • szudejkomichal

Web scraping i analiza stron internetowych przy pomocy Chat GPT

Zaktualizowano: 5 lip 2023

Tajemnicze hasło (web scraping) w tytule posta to przydatna, praktyczna umiejętność. Odnośni się ono do umiejętności pobierania danych ze strony internetowej. Może to być np. tabela, może to być cała strona.


Bez odpowiednich narzędzi, czynność ta jest bardzo pracochłonna. Wykonywanie jej ręcznie wymaga czasu, obarczone jest ryzykiem błędu. Szczęśliwie, dziś mamy już narzędzia, które ten proces ułatwiają. Należą do nich Excel, z funkcją pobierania danych z sieci web w Power Query, czy Google Sheets z funkcją "IMPORTHTML". Te dwie metody ograniczają jednak możliwość scrapingu do tabel HTML. A co jeśli chcemy przeanalizować całą zawartość strony, na potrzeby realizowanego projektu badawczego? Zastanawiałem się, czy możemy do tego zadania wykorzystać Chat GPT?


Okazuje się, że tak!

Mało tego, procedura nie jest przesadnie skomplikowana.


Czego potrzebujemy?

  1. Dostępu do Chat GPT w wersji płatnej Plus

  2. Instalacji wtyczek: Scraper i Noteable

  3. Strony internetowej, którą chcemy przeanalizować

Potrzebujemy się też upewnić, czy właściciel / autor strony nie ma nic przeciwko scrapowaniu jego własności/ dzieła. Zazwyczaj odpowiednia adnotacja znajduje się w regulaminie danej strony. W szczególności powinna znaleźć się tam informacja w jakim zakresie oraz w jaki sposób można korzystać z danych zawartych na stronie internetowej. Z prawnego punktu widzenia, scrapping nie jest nielegalny. Dużo też zależy od tego, co chcemy zrobić z danymi pozyskanymi w ten sposób. Jeżeli jest to po prostu automatyzacja naszej pracy, która i tak obejmowałaby pozyskanie (legalne) określonych danych, to w mojej prywatnej ocenie jak najbardziej możemy je pozyskać w drodze scrapowania. Jeżeli jednak jakkolwiek chcemy przywłaszczyć sobie te dane, uzyskiwać z nich korzyść majątkową bez zgody autora lub właściciela danych, to możemy narazić się na roszczenie o odszkodowanie. Osobną, ryzykowną kwestią jest też scrapowanie danych osobowych.


Ok. klauzulę prawną mamy za sobą. Dla bezpieczeństwa, scrapowaniu poddam stronę, gdzie bardzo dobrze znam autora tekstów i mam wszelkie niezbędne zgody:). Przejdźmy z powrotem do głównego zagadnienia.


W niniejszym poście pokażę jedynie wynik całego procesu. Mam w tym miejscu do Państwa pytanie: Czy jesteście zainteresowani jego technicznym aspektem: jak wykonać go krok po kroku?

Jeśli tak, to proszę o informację w komentarzu do artykułu lub pod postem na LinkedIn. Albo w wiadomości do mnie. Chętnie taki materiał przygotuję.


Przejdźmy do tematu artykułu.


KROK 1. SCRAPOWANIE STRONY PRZY POMOCY CHAT GPT ORAZ WTYCZKI SCRAPER


Przeanalizujmy jakąś stronę. Na przykład niniejszy blog. Pierwszym krokiem będzie aktywowanie wtyczki Scraper.



Po aktywowaniu Scrapera, wpisałem poniższy prompt:


Już po krótkiej chwili otrzymałem następujący wynik:


Jak się okazuje, jest to dość proste. Mało tego, wygląda zachęcająco, prawda? Niemniej, dojście do szybkiego generowania takich wyników chwilę mi zajęło. Okazało się, że aktywowanie kilku wtyczek na raz (u mnie był to Scraper i Noteable), bardzo spowalniało proces analizy. Należy zatem podzielić go na kilka etapów, gdzie w danym etapie aktywna będzie tylko jedna wtyczka. Testując działanie Scrapera, zauważyłem też, że nie zawsze prezentuje spójnie daty. Jest to problem, który warto zaadresować już na poziomie prompta. Nie będziemy później tracić czasu na poprawianie dat np. w Excelu.


Poprośmy zatem o więcej:


Format prezentowanych danych nie jest najprzyjaźniejszy. Poprośmy zatem o przedstawienie go w formie tabeli:


Wyciąganie technicznych informacji to nie wszystko, co potrafi Scraper wraz z chat GPT. W jednym z promptów poprosiłem go o napisanie krótkich streszczeń artykułów. Z tym też dał sobie radę. Acha, to, że niniejszy artykuł jest już na liście nie wynika z faktu profetycznych umiejętności Chat GPT. Wynika z faktu, że ten konkretny akapit dodałem chwilę po pierwszym opublikowaniu artykułu i nie chciałem go już zdejmować i ponownie publikować :).



KROK 2. ANALIZA STRONY PRZY POMOCY CHAT GPT ORAZ WTYCZKI NOTEABLE


Ok. mamy dane, spróbujmy je przeanalizować. W tym celu zaimportowałem dane do GitHub. Następnie przeanalizuje je przy pomocy wtyczki ChatGPT oraz wtyczki Noteable.



Następnie uruchamiamy analizę przy pomocy poniższego prompta. Może to trochę na wyrost dla 20 artykułów, ale chodzi o metodę :)


I dzieje się magia :)


Program najpierw załaduje i uporządkuje dane.


Trochę było walki, ale udało się rozdzielić i sformatować kolumny:


Program mógł zatem rozpocząć analizę danych. Oto kilka uzyskanych wyników:




Sprawdźmy czy są jakieś korelacje w danych?

Na koniec podsumujmy wyniki, aby móc je wykorzystać np. w prezentacji


I przetłumaczmy je na język polski:


PODSUMOWANIE

Szanowni Państwo! Jak widać, przedstawiony proces nie jest przesadnie skomplikowany. Wymaga na pewno:

  • pewnych działań przygotowawczych

  • ćwiczenia (jakie prompty dają najlepsze rezultaty czy chociażby problem z wtyczkami, na który ja się natknąłem).


Niemniej, jak pokazałem tym krótkim przykładem, wykonana praca daje potencjalnie bardzo duże możliwości oraz docelowo, zauważalną oszczędność czasu. Ja jestem pod coraz większym wrażeniem możliwości oferowanych przez technologię związaną z Chat GPT.


A co Państwo sądzą? Czy przedstawione techniki mogą być przydatne? I czy chcieliby Państwo dowiedzieć więcej o "kuchni" przygotowania analizy tego typu? Proszę o komentarz lub wiadomość. Ja ze swojej strony potwierdzam chęć przygotowania takiego materiału. Pytanie też, jaka forma lepiej się mogłaby (ewentualnie) sprawdzić: tekst czy e-learning video?


Zapraszam też do lektury mojego pierwszego artykułu na medium.com, gdzie pokazuję jak wykorzystać ChatGPT w przygotowaniu prezentacji storytellingowej.

79 wyświetleń0 komentarzy

Ostatnie posty

Zobacz wszystkie
bottom of page