Ochrona płatnościSzczegóły
- Poprawki w ramach pakietu są bezpłatne.
- Jeśli nie odpowiesz w ciągu 3 dni od dostarczenia pracy, zostanie ona zaakceptowana automatycznie.
Pieniądze są rezerwowane w chwili płatności i przekazywane dopiero po akceptacji pracy.

Przykładowy rezultat
Parser katalogu dostawcy narzędzi ogrodowych do Excela
Jak wygląda wynik
| Indeks | Nazwa | Cena | Dostępny | Waga | Zdjęcie |
|---|---|---|---|---|---|
| GT-1042 | Sekator, 20 mm | 18,90 | Tak | 0,24 kg | …/gt-1042.jpg |
| GT-1187 | Piła składana, 210 mm | 24,50 | Tak | 0,31 kg | …/gt-1187.jpg |
| GT-2210 | Nożyce do żywopłotu, ostrza faliste | 39,00 | Nie | 1,10 kg | …/gt-2210.jpg |
| GT-3305 | Łopatka ogrodowa, nierdzewna | 9,80 | Tak | 0,18 kg | …/gt-3305.jpg |
| GT-4120 | Wąż ogrodowy 25 m, 1/2" | 42,00 | Tak | 2,90 kg | …/gt-4120.jpg |
Plik w przykładzie zawiera 1236 produktów z 52 stron listy.
Fragment kodu
def product_links(list_url: str) -> Iterator[str]:
"""Linki do stron produktów z każdej strony listy, z przejściem przez „Dalej”."""
url: str | None = list_url
while url:
page = fetch(url)
for card in page.select("div.product-card a.title"):
yield urljoin(url, card["href"])
next_link = page.select_one("a.pagination-next")
url = urljoin(url, next_link["href"]) if next_link else None
def fetch(url: str) -> BeautifulSoup:
"""Jedna ogólnodostępna strona, w spokojnym tempie: przerwa między zapytaniami i kilka prób przy błędach."""
for attempt in range(3):
time.sleep(settings.delay_seconds)
response = session.get(url, timeout=30)
if response.status_code == 200:
return BeautifulSoup(response.text, "html.parser")
log.warning("%s odpowiedział kodem %s, próba %d z 3", url, response.status_code, attempt + 1)
raise ScraperError(f"{url} nie otworzył się po 3 próbach")
Pliki: archiwum ZIP z plikami scraper.py, settings.ini (strona startowa, przerwa między zapytaniami, nazwa pliku), requirements.txt oraz README o instalacji i uruchomieniu. Parser czyta tylko ogólnodostępne strony, jedną co 2 sekundy, i najpierw sprawdza plik robots.txt strony. Klient uruchamia go na własnym komputerze.
Klient: internetowy sklep ogrodniczy, który odsprzedaje narzędzia dostawcy; dostawca ma na swojej stronie ogólnodostępny katalog, ale nie udostępnia pliku z cennikiem. Zadanie: przejść przez strony listy w katalogu, otworzyć każdą stronę produktu i zapisać do Excela indeks, nazwę, cenę, dostępność, wagę i link do głównego zdjęcia, żeby raz w tygodniu porównywać ceny.
Klient i wszystkie dane są wymyślone.
O usłudze
Agencje rekrutacyjne, serwisy kariery i osoby szukające pracy korzystają z tego parsera, żeby zebrać ogólnodostępne oferty pracy w jedną tabelę: stanowisko, firma, miasto, praca zdalna lub stacjonarna, rodzaj umowy, wynagrodzenie od i do w brzmieniu z oferty, data publikacji, krótki opis i link. Uruchom wyszukiwanie w serwisie z ofertami pracy albo otwórz stronę kariery firmy, a potem prześlij ten link, jedną ofertę oraz jedną lub dwie strony zapisane z przeglądarki. Dostajesz kod w Pythonie, plik ustawień i README i uruchamiasz go na swoim komputerze. Dane osób zostają poza tabelą: żadnych imion, nazwisk, e-maili ani numerów telefonów rekruterów czy pracowników. Czyta ogólnodostępne strony w spokojnym tempie, nigdy się nie loguje ani nie obchodzi captchy czy zabezpieczeń i nie odczytuje LinkedIn. To Ty oceniasz, czy regulamin strony na to pozwala; późniejsza zmiana jej układu wymaga aktualizacji.
Co obejmuje usługa
- Co otrzymaszArchiwum ZIP z kodem w Pythonie, plikiem ustawień i plikiem README z instrukcją krok po kroku; kod widać też na stronie zamówienia.
- Wynagrodzenie w kolumnachOd i do jako liczby, gdy oferta je podaje
- Twoje wyszukiwanieStartuje od linku wyszukiwania z Twoimi filtrami
- Bez kontaktówBez imion, e-maili i telefonów rekruterów
- Spokojne tempoPrzerwa między stronami ustawiana w ustawieniach
- Prosta instrukcjaCo zainstalować i jak uruchomić, krok po kroku
Jak to działa
- 1WyszukiwaniePrzesyłasz wyszukiwanie lub stronę kariery i jedną zapisaną ofertę
- 2ParserPiszemy kod i instrukcję uruchomienia
- 3UruchomienieUruchamiasz go i porównujesz pierwsze oferty ze stroną
- 4ZmianyZgłaszasz poprawki w ramach pakietu i przesyłasz ewentualny komunikat o błędzie
Czego potrzebujemy od Ciebie
Serwis z ofertami pracy lub strona kariery i link do wyszukiwania z Twoimi filtrami (stanowisko, miasto, praca zdalna), jedna oferta oraz mniej więcej liczba ofert. Pola, których potrzebujesz, w kolejności Twojej tabeli, np. stanowisko, firma, miasto, wynagrodzenie od, wynagrodzenie do, rodzaj umowy, data, link. Jedna lub dwie takie strony zapisane z przeglądarki (Plik > Zapisz stronę jako) lub zrzuty ekranu. CSV czy Excel.
Zapytamy Cię:
- Która strona i jakie wyszukiwanie?
- Potrzebne pola
- Mniej więcej ile ofert?
- Co jeszcze ma robić
Porównaj pakiety
| Pakiety | PodstawowyOferty pracy z Twoich linków83 zł | StandardWyszukiwanie, każda oferta158 zł | PremiumDo 3 serwisów z ofertami pracy286 zł |
|---|---|---|---|
| Termin | 1 dzień | 2 dni | 3 dni |
| Poprawki | 1 | 2 | 3 |
| Strony | 1 | 1 | do 3 |
| Rodzaje stron | 1 | 2 (wyniki wyszukiwania i oferta) | do 3 |
| Pola | do 10 | do 25 | do 25 na każdej |
| Przechodzi przez kolejne strony listy | Nie | Tak | Tak |
| Plik z wynikami | CSV | Excel lub CSV | Excel, CSV lub JSON |
| Bez duplikatów, wznawia pracę od miejsca, w którym przerwał | Nie | Nie | Tak |
| Zamów Podstawowy | Zamów Standard | Zamów Premium |
Ochrona płatności
Płacisz przy składaniu zamówienia, ale pieniądze są przekazywane tylko za zaakceptowaną pracę.
- Stała cenaCena pakietu nie zmienia się po zapłacie.
- Pieniądze są zarezerwowanePrzy płatności kwota jest tylko rezerwowana. Serwis otrzymuje ją dopiero po akceptacji pracy.
- Sprawdzone przed dostarczeniemKażdy wynik przechodzi kontrolę jakości, zanim do Ciebie trafi, a przed akceptacją widzisz go na stronie zamówienia.
- Bezpłatne poprawkiProś o poprawki w ramach briefu tyle razy, ile przewiduje pakiet.
- Akceptacja po 3 dniachJeśli w ciągu 3 dni od dostarczenia pracy ani jej nie zaakceptujesz, ani nie poprosisz o poprawki, zostanie zaakceptowana automatycznie. Jeśli po dostarczeniu napiszesz na czacie zamówienia, zamówienie czeka; po naszej odpowiedzi możemy ponownie uruchomić odliczanie 3 dni i poinformujemy o tym na czacie.
- Ponowne wykonanie lub pełny zwrot pieniędzyJeśli wynik nie odpowiada Twojemu briefowi, a poprawki tego nie naprawiły, lub praca trwa ponad dwa razy dłużej niż termin, napisz na czacie zamówienia: wykonamy pracę ponownie albo zwrócimy całą płatność.
Pytania i odpowiedzi
Czy może zebrać kontakty do rekruterów, żebym mógł wysyłać im oferty?
Nie. Parser nie zbiera imion, nazwisk, e-maili ani numerów telefonów. Każdy wiersz ma link do oferty, przez którą możesz odpowiedzieć tak, jak umożliwia to strona.
Czy może odczytać LinkedIn lub oferty pracy z mediów społecznościowych?
Nie. LinkedIn, inne media społecznościowe, Google i Amazon nie wchodzą w grę: ich regulaminy tego zabraniają, a ich strony zawierają dane osób. Ogólnodostępne serwisy z ofertami pracy i strony kariery firm są w porządku, jeśli pozwala na to ich regulamin, co oceniasz Ty.
Czy może aplikować na oferty za mnie?
Nie. Tylko czyta ogólnodostępne strony; nigdy nie wypełnia formularzy, nie loguje się ani niczego nie wysyła.
A jeśli serwis z ofertami się zmieni albo ograniczy wizyty?
Parser działa ze stronami w ich obecnej formie; po zmianie układu wymaga aktualizacji, która jest nowym zamówieniem. Jeśli strona ogranicza wizyty, parser tego nie obchodzi.
Nie ma tu odpowiedzi?