Strona do zarządzania parserami (Python + Selenium)
Ten prosty w użyciu, ale bardzo efektywny system do zarządzania parserami został zrealizowany w celu zasilania treścią stron internetowych do listowania firm w USA i Wielkiej Brytanii. Składa się z 2 logicznych komponentów:
* moduł uruchamiania i zarządzania parserami
* strona internetowa jako interfejs użytkownika.
Główne możliwości:
* ponad 450 zrealizowanych parserów o różnym stopniu skomplikowania
* zapewnienie wysokiej wydajności parserów dzięki równoległemu działaniu
* wbudowany system ochrony przed detekcją: rotacja proxy, brak flagi headless dzięki wirtualnemu wyświetlaczowi, środki antydetekcyjne dla przeglądarek kontrolowanych przez Selenium
* kontrola pracy parserów: uruchamianie parsera z parametrami (wykluczenie lub włączenie interwałów stanów, prowincji, stron itp.), uruchamianie wszystkich parserów w kategorii, przedwczesne zatrzymanie parsowania
* monitoring pracy parserów: liczba pomyślnie przetworzonych punktów, liczba zablokowanych proxy, ogólny status pracy
* możliwość pobierania plików logów do analizy problemów
* możliwość aktualizacji listy parserów bez konieczności całkowitego zatrzymania wszystkich
Stos technologiczny:
* Frameworki: FastAPI
* Biblioteki: Bootstrap, pymysql, Pillow (były zadania z parsowaniem obrazów)
* Infrastruktura parsowania: multiprocessing, requests, BeautifulSoup, Selenium, undetected-chromedriver, xvfb
* Inne narzędzia: Docker i docker-compose, Sentry
* moduł uruchamiania i zarządzania parserami
* strona internetowa jako interfejs użytkownika.
Główne możliwości:
* ponad 450 zrealizowanych parserów o różnym stopniu skomplikowania
* zapewnienie wysokiej wydajności parserów dzięki równoległemu działaniu
* wbudowany system ochrony przed detekcją: rotacja proxy, brak flagi headless dzięki wirtualnemu wyświetlaczowi, środki antydetekcyjne dla przeglądarek kontrolowanych przez Selenium
* kontrola pracy parserów: uruchamianie parsera z parametrami (wykluczenie lub włączenie interwałów stanów, prowincji, stron itp.), uruchamianie wszystkich parserów w kategorii, przedwczesne zatrzymanie parsowania
* monitoring pracy parserów: liczba pomyślnie przetworzonych punktów, liczba zablokowanych proxy, ogólny status pracy
* możliwość pobierania plików logów do analizy problemów
* możliwość aktualizacji listy parserów bez konieczności całkowitego zatrzymania wszystkich
Stos technologiczny:
* Frameworki: FastAPI
* Biblioteki: Bootstrap, pymysql, Pillow (były zadania z parsowaniem obrazów)
* Infrastruktura parsowania: multiprocessing, requests, BeautifulSoup, Selenium, undetected-chromedriver, xvfb
* Inne narzędzia: Docker i docker-compose, Sentry