web scraping

Dlaczego warto scrapować?

Dlaczego warto scrapować

Internet jest największym zbiorem danych zgromadzonych przez ludzkość. Niezliczone pokłady materiałów naukowych, artykułów, zdjęć. Ogrom wiedzy dostępnej za darmo. A gdyby tak móc zebrać tę wiedzę i ją przetwarzać? Jest na to sposób, nazywa się web scraping i w tym artykule powiem Ci, dlaczego warto się tym zainteresować oraz dlaczego warto scrapować.

O botach możesz przeczytać w moim artykule „Jak działają boty Google? Web crawling”.

Zaprogramowany bot przejdzie po stronie zgodnie z wytyczoną przez nas ścieżką, pobierze wskazane dane, a nawet dokona ich wstępnej analizy czy grupowania.

Jak zrobić takiego bota-scrapera? Dowiesz się tego z mojego poradnika web scrapingu.

Wiesz już jak scrapować, pozostaje jednak pytanie znacznie ważniejsze: dlaczego w ogóle scrapować?

Dlaczego warto scrapować?

Szybkość pobierania danych

Gromadzenie wiedzy zebranej w internecie w sposób manualny to proces bardzo czasochłonny. Wejdź na stronę, skopiuj potrzebne fragmenty, zapisz je w jakimś notatniku. Jeżeli danych i podobnych stron jest dużo, robienie tego ręcznie jest po prostu stratą czasu.

Znacznie lepiej sprawdzi się tutaj stworzenie web scrapera.

Stwórz listę stron, zaprogramuj parsowanie kodu HTML, włącz scrapera i ciesz się bardzo szybkim wynikiem :)

Oczywiście, sam proces programowania bota może być czasochłonny, jednak bardzo często kilka godzin przeznaczonych na stworzenie scrapera oszczędzi nam kilka dni ręcznego pobierania danych.

Porównanie cen

Inwestowanie na giełdzie czy internetowe licytacji wymagają szybkiego reagowania i ciągłego obserwania ceny.

Ciągłe wchodzenie na strony z cenami może być męczące i czasochłonne. Tutaj z pomocą przychodzi właśnie webscraping.

Wystarczy napisać własnego scrapera pobierającego interesujące nas dane i uruchamiać go tak często jak chcemy aktualizować dane. Możesz na przykład skorzystać z unixowego narzędzia cron, które pozwoli Ci zaplanować uruchomienie scrapera w konkretnym czasie w ciągu dnia.

Prezentacja danych

Każdego dnia korzystamy z danych opracowanych i zwizualizowanych przez kogoś innego: plany, rozkłady jazdy, kalendarze.

A co jeśli zaprezentowana forma danych Ci nie odpowiada? Po prostu zescrapuj dane ze strony internetowej i wizualizuj je samodzielnie :)

wizualizacja danych

Agregacja treści

Internet jest pełen ciekawych, rozmaitych treści, właściwie na każdy temat. Istnieje jednak pewien problem z agregacją takich treści.

Miałeś kiedyś tak, że pamiętałeś, że czytałeś jakiś wartościowy artykuł, ale nie mogłeś przypomnieć sobie gdzie go czytałeś? Czasem nawet przypomnienie sobie na jakim portalu go znaleźliśmy nie jest wystarczające, gdyż wśród tysięcy artykułów o podobnej tematyce trudno znaleźć jeden konkretny.

Jak już pewnie się domyśliłeś rozwiązaniem tego problemu może być scrapowanie :)

Big data i uczenie maszynowe

Algorytmy uczenia maszynowego czy big data wymagają ogromnych zbiorów różnorodnych danych.

Jak zebrać tyle danych? Najlepiej scrapując :)

Scrapowanie danych z internetu pozwala bardzo szybko powiększyć naszą lokalną bazę danych. Szukasz obrazków do wytrenowania modelu klasyfikatora? Użyj odpowiedniej kwerendy w Google i ściągnij potrzebne obrazki.

Monitoring marki

W internecie działamy pod własną lub firmową marką. Ważnym elementem rozwijania swojego biznesu internetowego jest monitoring marki.

Wiedząc co o nas mówią, gdzie mówią oraz jak często mówią możemy reagować na zarówno pozytywne jak i negatywne komentarze, czy też weryfikować efekty naszych działań marketingowych.

Dostępnych jest wiele narzędzi do monitoringu internetu (np. polskie Brand24), jednak są to rozwiązania dosyć drogie. O mniej skomplikowany monitoring możemy zadbać właśnie poprzez web scraping.

Scrapując newsy i komentarze z różnych portali, blogów, forów internetowych możemy całkiem sprawnie monitorować naszą własną markę :)

Czy zawsze można scrapować?

Mówiąc krótko – nie.

Treści publikowane w internecie są czyjąś własnością. Właściciel treści poświęcił swój czas i pieniądze na wytworzenie danego artykułu czy zestawienia danych i powinniśmy uszanować, jeżeli nie chce, by te dane scrapowano.

Przed rozpoczęciem pisania scrapera powinniśmy upewnić się czy właściciel treści na to zezwala (lub po prostu nie zabrania). Należy przejrzeć regulamin danego serwisu, warunki użytkownia (terms of usage) oraz inne dokumenty określające zasady naszej interakcji ze stroną.

Podsumowanie

Web scraping pozwala na masowe zbieranie danych dostępnych w internecie. To rewelacyjne narzędzie w przypadku automatyzowania procesu pobierania danych, które zdecydowanie powinno znaleźć się w przyborniku każdego analityka danych.

Musimy jednak pamiętać, aby uszanować prawo właściciela do zakazu scrapowania jego danych :)

20 przydatnych bibliotek w Pythonie

Jeżeli jeszcze nie pobrałeś darmowego dokumentu to wejdź na stronę główną i kliknij w okładkę po prawej stronie :)

Pozdrawiam :)

Kamil Kwapisz

Tagged , , ,

About Kamil Kwapisz

Jestem studentem informatyki na Politechnice Warszawskiej i entuzjastą Pythona.
View all posts by Kamil Kwapisz →

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *