Zciąganie danych kontaktowych z internetu do tabeli

0

Cześć Wam!

Mam problem.
Potrzebuję programu który wejdzie na stronę "www.baza-firm.com.pl" i wedle
podanych przeze mnie prostych kryteriów zrobi z widocznych tam firm ładną listę kontaktów w excelu albo jeszcze lepiej w accessie.
Jakie są rozwiązania narynku? Płatne? Darmowe? Jeśli sam chciałbym coś takiego napisać to czym mam się zainteresować?

1

Haslo kluczowe: web scraping

0
adams0 napisał(a):

Jakie są rozwiązania narynku? Płatne? Darmowe? Jeśli sam chciałbym coś takiego napisać to czym mam się zainteresować?

Takie rozwiązana są płatne, jednorazowe i generalnie zlecane. Polecam https://4programmers.net/Forum/Og%C5%82oszenia_drobne lub freelancer.com
A jak chcesz sam pisać, to Python np. https://scrapy.org/
lub YQL.

0

Poczytaj o web scrapingu.

Możesz do tego celu wykorzystać gotowe narzędzia np. http://webscraper.io, które potrafią ze strony ściągnąć dane wg określonych kryteriów. Nie wiem czy te gotowe narzędzia sobie radzą z paginacją, ale na stronie tego przykładowego webscraper.io piszą, że tak.

Możesz napisać własne narzędzie z wykorzystaniem biblioteki do web scrapingu, w zależności od wybranego języka programowania. W Pythonie taka biblioteka to np. BeautifulSoup, w Javie to np. Jsoup.

1

Jak masz jakies podstawowe umiejetnosci programowania, sam dasz rade napisac taki tool.
To bardzo proste:

  1. Patrzych jak zrobiona jest strona (dev tools, inspect): formularz PHP, kazde pole ma przypisany identyfikator (vm, vn, vw)
  2. Wpisujesz przykladowe dane i wysylasz formularz i patrzysz jak wysylane sa dane (tu GET, wiec otrzymujesz np. request z url https://www.baza-firm.com.pl/?vn=&vu=&vm=warszawa&vw=7&vwn=mazowieckie&v_br=&v_br_opis=-+-+-+wybierz+-+-+-&vsk=&b_szukaj=szukaj)
  3. Sprawdzasz wyniki wyszukiwania (znowu dev tools, inspekt na danym elemencie, np. pierwsza firma) - widzisz, ze kazda firma zawarta jest w elemencie z klasa cc "wizRow", kazdy element zawierajacy firme ma atrybuty "itemscope itemtype"

Teraz mozesz ajaxem (czymkolwiek) wyslac request jak w pkt 2 i wynik (HTML) przefiltrowac np. wybierajac tylko elementy z klasa "wizRow". Potem pracujesz na tych elementach, wyciagasz w podobny sposob dane ktore potrzebujesz, np. elementy z klasa "telAddrBox" zawiera adres, itd.

0

Warto wspomnieć o narzędziu do nasłuchiwania HTTP, np. https://addons.mozilla.org/pl/firefox/addon/live-http-headers/

1 użytkowników online, w tym zalogowanych: 0, gości: 1