Alternatywy Portia do ekstrakcji danych internetowych

Opublikowany: 2019-07-15
Spis treści pokaż
Jakie są zalety wizualnych skrobaków internetowych?
W jakich obszarach wizualne skrobaki internetowe nie spełniają oczekiwań?
Jakie mamy inne alternatywy?
Dostawcy DaaS a zespół wewnętrzny?
Wniosek

Portia była wizualnym narzędziem, które pozwalało użytkownikom indeksować strony internetowe bez wiedzy programistycznej. Była to usługa hostowana, ale z powodu malejącego użycia skrobaków wizualnych została usunięta i nie jest już używana. Jak więc ludzie używali Portii, kiedy istniała? Aby korzystać z Portii, musisz wprowadzić wzorzec adresów URL, które chcesz odwiedzić, a następnie wybrać elementy na tych stronach za pomocą gestów „wskaż i kliknij” lub za pomocą CSS lub XPath. Pomimo łatwej obsługi, największe problemy z Portią były następujące:

  • Było to czasochłonne narzędzie do uzyskania kontroli w porównaniu z innymi narzędziami do skrobania stron internetowych o otwartym kodzie źródłowym.
  • Poruszanie się po stronach internetowych było trudne.
  • Musiałeś wspomnieć o stronach docelowych, kiedy zacząłeś indeksować, aby Portia nie odwiedzała niepotrzebnych adresów URL.
  • Nie było możliwości podłączenia bazy danych, aby zapisać zebrane punkty danych.

Jakie są zalety wizualnych skrobaków internetowych?

Jeśli masz jednorazowe wymaganie dotyczące skrobania sieci Web, możesz użyć wizualnej skrobaczki sieci Web, ale nie zaleca się używania jej jako części biznesowego przepływu pracy. Jeśli prowadzisz firmę, w której musisz przeszukiwać dane z bardzo niewielu statycznych stron internetowych, a to zbyt rzadko (powiedzmy raz w miesiącu), możesz znaleźć w swoim zespole kogoś, kto wie, jakie dane należy przeszukać, aby zrozumieć działanie wizualnego skrobaka sieci w ciągu kilku godzin, a następnie od czasu do czasu ekstrakcja danych z sieci. Wizualne roboty sieciowe są szczególnie przydatne dla małych firm, które nie mają zespołu technicznego i mają niewielkie wymagania dotyczące skrobania.

Wizualny robot internetowy jest prawie taki sam, jak ktoś, kto klika „sprawdź elementy” na stronie internetowej i kopiuje i wkleja dane z treści HTML. Zamiast tego, gdy używasz wizualnego skrobaka internetowego, w końcu klikasz część strony internetowej, a oprogramowanie kopiuje dane do wybranej lokalizacji.

Alternatywy Portii

W jakich obszarach wizualne skrobaki internetowe nie spełniają oczekiwań?

Wizualne skrobaki jednak zawodzą, gdy masz do zrobienia poważne ciężkie podnoszenie.

Może być konieczne uwzględnienie scrapingu niektórych danych w ramach przepływu pracy biznesowej (który powinien być zautomatyzowany).
Dane mogą wymagać zeskrobywania z setek lub tysięcy stron i mogą wymagać bardzo częstego odświeżania.

Może zaistnieć potrzeba przesyłania na żywo danych ze skrobaków dla konkretnego modułu biznesowego. W większości powyższych przypadków skrobak sieciowy oparty na kodzie byłby znacznie bardziej przydatny niż skrobak wizualny.

Większość projektów polegających na masowym zbieraniu danych wymaga przeszukiwania wielu podobnych stron internetowych w celu wyodrębnienia danych z sieci o różnych elementach. Pozycje te mogą obejmować informacje o lotach w witrynach z e-bookami, a także szczegółowe informacje o produktach w witrynach e-commerce. Logika stosowana w takich scenariuszach polega na tym, że próbujesz zrozumieć wzorzec, w którym dane są przechowywane na stronach internetowych przy użyciu kilku stron internetowych, i używasz kodu, który może nie tylko indeksować strony o dokładnie takiej samej strukturze, ale nawet strony o podobnej strukturze . Również podczas scrapingu wszystkich stron dostępnych w witrynie, strony o określonej strukturze mogą wymagać zignorowania. Wszystkie te dostosowania nie są możliwe w przypadku skrobaka wizualnego, dlatego nie zaleca się skrobania zbyt wielu stron za pomocą skrobaka wizualnego.

Z drugiej strony spektrum, ze względu na zmiany wyglądu i stylu witryn co kilka tygodni lub miesięcy, może być konieczne przeszkolenie wizualnego skrobaka sieci za każdym razem, gdy zmienia się interfejs użytkownika witryny. Z drugiej strony, podczas korzystania ze skrobaka opartego na kodzie, często zmiana interfejsu użytkownika może nawet nie wymagać żadnych zmian w skrobaku, ponieważ strona internetowa może nadal strukturalnie pozostać taka sama. Nawet jeśli są jakieś zmiany w interfejsie użytkownika, które mogą wymagać zmiany skrobaka, zmiany są zwykle minimalne, a dostosowanie skrobaka do zmian jest dość proste.

Jakie mamy inne alternatywy?

Istnieje wiele alternatyw dla Portii. Języki takie jak Python, R i Golang są używane przez programistów i zespoły web scrapingu na całym świecie do ekstrakcji danych internetowych ze stron internetowych. Opracowywane są nowe sposoby przyspieszenia tego procesu. Na przykład, za pomocą programowania równoległego i buforowania w Golang, korzystając z pakietu o nazwie Colly, możesz użyć niestandardowych ustawień, takich jak:

  1. Liczba stron, które chcesz jednocześnie zaindeksować w dowolnym momencie.
  2. Maksymalna głębokość, na jaką powinien przejść skrobak, gdy zacznie zdrapywać ze strony internetowej. (Oznacza to, że jeśli ustawisz maksymalną głębokość na 3, zindeksuje ona górną stronę, przejdzie do znalezionego w niej adresu URL, zindeksuje ją, a następnie przejdzie do adresu URL znalezionego na tej stronie i również ją zindeksuje, ale teraz na trzeciej stronie, jeśli znajdzie adres URL, nie przejdzie dalej).
  3. Możesz ustawić sprawdzanie słów obecnych w adresach URL - to znaczy, jeśli słowo jest obecne w adresie URL, strona internetowa w tym adresie URL musi zostać zeskrobana. Możesz też ustawić wykluczenia — adresy URL zawierające określone słowo, które nie powinny być dostępne dla skrobaka.

To tylko niektóre z przykładów setek małych funkcji, które otrzymujesz, gdy samodzielnie budujesz skrobak sieciowy.

Dostawcy DaaS a zespół wewnętrzny?

Większość firm, które nie mają zespołu technicznego, a nawet członków bez podstawowej znajomości jakiegokolwiek języka skryptowego, powinna starać się nie budować własnego zespołu zajmującego się skrobaniem. Powód tego jest prosty. Pieniądze, które wydajesz na rekrutację programistów, a następnie skłonienie ich do zbudowania i utrzymania zupełnie nowego systemu web scrapingu dla Twoich potrzeb biznesowych, byłyby ogromne. A na koniec dnia, jeśli jesteś małą firmą, a web scraping nie jest paliwem dla Twojej firmy (tj. Twoja firma nie jest skupiona na danych, które indeksujesz z sieci), to nie ma sensu budować wewnętrzny zespół.

W takim przypadku prostym rozwiązaniem są dostawcy DaaS, którzy przyjmują Twoje wymagania i udostępniają dane w wybranym przez Ciebie formacie. Nasz zespół w PromptCloud jest bardzo dumny z ograniczania skrobania stron internetowych do dwuetapowego procesu dla firm i przedsiębiorstw.

Wniosek

Chociaż narzędzia wizualne są dobre dla zespołów biznesowych, możemy zgodzić się, że web scraping nie jest tylko prostym zadaniem biznesowym. Jest to zadanie, które musi być wydajne, szybkie i całkowicie konfigurowalne. Jeśli masz duże wymagania dotyczące skrobania sieci lub chcesz wyodrębnić dane z sieci na znacznie większą skalę, zaleca się korzystanie z usług skrobania sieci.

Jeśli nie jesteś biegły w programowaniu lub Twoje wymagania są złożone, możesz skorzystać z w pełni zarządzanego dostawcy usług, takiego jak PromptCloud, aby uzyskać czyste dane w sposób zautomatyzowany, bez żadnych problemów technicznych ani uczenia się jakiegokolwiek narzędzia.