Parser dla strony otomoto.pl
Skrypt zbiera dane (nazwa, cena, telefon) z ogłoszeń na stronie Otomoto.
Kluczowymi problemami były ochrona strony przed botami oraz dekodowanie telefonów bez użycia przeglądarek dla maksymalnej szybkości i zmniejszenia zużycia zasobów. Rozwiązanie polega na specjalnej symulacji zachowania prawdziwej przeglądarki. Przeprowadzono również odwrotną inżynierię (reverse engineering) algorytmu dekodowania numerów telefonów.
Możliwości:
* Wielowątkowa obsługa listy linków z pliku
* Obsługa proxy SOCKS5 i ich rotacja dla każdego zapytania
* Automatyczne ponowne próby przy nieudanych zapytaniach
* Elastyczne ustawienia przez parametry uruchomienia
* Zapisywanie wyników do pliku CSV oraz szczegółowy log błędów
* Możliwość pracy bez proxy i w jednym wątku
Użyte technologie
* Język programowania: Node.js
* Biblioteki: got-scraping, p-queue, fast-csv, socks-proxy-agent
#scraping #parsing #Node.js #otomoto #kontakty
Kluczowymi problemami były ochrona strony przed botami oraz dekodowanie telefonów bez użycia przeglądarek dla maksymalnej szybkości i zmniejszenia zużycia zasobów. Rozwiązanie polega na specjalnej symulacji zachowania prawdziwej przeglądarki. Przeprowadzono również odwrotną inżynierię (reverse engineering) algorytmu dekodowania numerów telefonów.
Możliwości:
* Wielowątkowa obsługa listy linków z pliku
* Obsługa proxy SOCKS5 i ich rotacja dla każdego zapytania
* Automatyczne ponowne próby przy nieudanych zapytaniach
* Elastyczne ustawienia przez parametry uruchomienia
* Zapisywanie wyników do pliku CSV oraz szczegółowy log błędów
* Możliwość pracy bez proxy i w jednym wątku
Użyte technologie
* Język programowania: Node.js
* Biblioteki: got-scraping, p-queue, fast-csv, socks-proxy-agent
#scraping #parsing #Node.js #otomoto #kontakty