Minulý víkend jsem se při pokusech o stažení stránky Amazon Best Sellers skoro prokousal celým kávovarem. Vyzkoušel jsem čtyři různé přístupy. Dva fungovaly parádně, jeden mě málem dostal k zablokování IP adresy a jeden zabral doslova na dvě kliknutí. Tady je všechno, co jsem zjistil.
Amazon je obrovský tržištní gigant — , a systém Best Sellers Rank (BSR), který se aktualizuje každou hodinu. Pokud děláš průzkum produktů pro FBA, analyzuješ konkurenci nebo se jen snažíš zachytit trendy dřív než soupeři, data z Best Sellers jsou k nezaplacení.
Jenže dostat ta data z Amazonu do tabulky? Tam teprve začíná sranda. Otestoval jsem requests + BeautifulSoup, Selenium, scraping API a (náš vlastní no-code AI web scraper), abych zjistil, který přístup opravdu funguje — a který tě pošle rovnou na CAPTCHA stránku.
Co je Amazon Best Sellers a proč by tě to mělo zajímat?
Amazon Best Sellers Rank (BSR) je průběžné žebříčkové hodnocení produktů podle objemu prodeje v jednotlivých kategoriích. Představ si to jako soutěž popularity, která se aktualizuje každou hodinu podle čerstvých i historických prodejních dat. Amazon to popisuje takto:
„Výpočet Amazon Best Sellers vychází z prodejů na Amazonu a aktualizuje se každou hodinu, aby odrážel nedávné i historické prodeje každé položky prodané na Amazonu.“ —
Stránka Best Sellers ukazuje top 100 produktů v každé kategorii, rozdělených na dvě stránky po 50 položkách. Stránka 1 pokrývá pozice #1–50, stránka 2 pozice #51–100. Amazon potvrdil, že zobrazení stránky ani hodnocení recenzí BSR neovlivňují — jde čistě o prodejní výkon.
Kdo ta data potřebuje? Prodejci v e-commerce hledající produkty pro FBA, obchodní týmy budující konkurenční inteligenci, operations týmy sledující cenové trendy a market research analytici, kteří sledují růst kategorií. Podle mé zkušenosti nakonec každý, kdo prodává na Amazonu nebo s ním soupeří, ta data potřebuje mít v tabulce.
Proč scrapovat Amazon Best Sellers pomocí Pythonu?
Ruční průzkum produktů je ztráta času. Studie zjistila, že zaměstnanci stráví 9,3 hodiny týdně jen vyhledáváním a shromažďováním informací. U e-commerce týmů to znamená hodiny proklikávání Amazonu, kopírování názvů a cen produktů a jejich vkládání do tabulek — a za týden zase nanovo.
Tady je rychlý přehled use casů, kvůli kterým má scrapování Best Sellers smysl:
| Use Case | Co získáš | Kdo z toho těží |
|---|---|---|
| Průzkum produktů pro FBA | Najdeš produkty s vysokou poptávkou a nízkou konkurencí podle BSR a počtu recenzí | Prodejci na Amazonu, dropshippeři |
| Sledování konkurenceschopných cen | Hlídáš změny cen u nejlepších produktů ve své kategorii | E-commerce týmy, cenoví analytici |
| Monitoring trendů na trhu | Odhalíš rostoucí kategorie a sezónní výkyvy | Product manažeři, market research týmy |
| Generování leadů | Vytvoříš seznamy nejprodávanějších značek a jejich produktových řad | Obchodní týmy, B2B outreach |
| Analýza konkurence | Porovnáš své produkty s lídry kategorie | Brand manažeři, strategické týmy |
Návratnost je reálná: průzkum mezi 2 700 lidmi z oblasti commerce zjistil, že AI nástroje ušetří e-commerce profesionálům v průměru . A prodejci používající automatizované sledování cen drží Buy Box oproti 42 % u manuálního sledování — tedy o 37 % vyšší prodeje díky rychlejší reakci na změny cen.
4 způsoby, jak scrapovat Amazon Best Sellers pomocí Pythonu: rychlé srovnání
Než se pustíme do podrobných návodů, tady je srovnání vedle sebe, které bych si býval přál mít před testováním. Tahle tabulka ti pomůže vybrat správnou metodu podle situace:
| Kritérium | requests + BS4 | Selenium | Scraping API (např. Scrape.do) | Thunderbit (No-Code) |
|---|---|---|---|---|
| Náročnost nastavení | Střední | Vysoká (driver, prohlížeč) | Nízká (API klíč) | Velmi nízká (rozšíření do Chrome) |
| Zvládá lazy loading | Ne | Ano (simulace scrollování) | Ano (renderované HTML) | Ano (AI zvládne renderování) |
| Odolnost proti anti-botu | Nízká (blokace IP) | Střední (detekovatelné) | Vysoká (rotující proxy) | Vysoká (cloud + browser režim) |
| Náročnost údržby | Vysoká (selektory se lámou) | Vysoká (aktualizace driveru + selektory) | Nízká | Velmi nízká (AI se přizpůsobí změnám rozložení) |
| Cena | Zdarma | Zdarma | Placené (za request) | Free tier + placené plány |
| Nejlepší pro | Jednorázové scrapování, učení | Stránky s JS, přihlášené relace | Škála / produkce | Netechnické uživatele, rychlý průzkum, opakovaný monitoring |
Pokud se chceš naučit základy scrapování v Pythonu, začni metodou 1 nebo 2. Pokud potřebuješ spolehlivost v produkčním měřítku, zvol metodu 3. Pokud chceš výsledky během dvou kliknutí bez psaní kódu, skoč rovnou na metodu 4.
Než začneš
- Obtížnost: Začátečník až mírně pokročilý (podle metody)
- Časová náročnost: ~15 minut pro Thunderbit, ~45 minut pro Python metody
- Co budeš potřebovat: Python 3.8+ (pro metody 1–3), prohlížeč Chrome, (pro metodu 4) a URL cílové kategorie Amazon Best Sellers
Metoda 1: Scrapování Amazon Best Sellers pomocí requests + BeautifulSoup
Tohle je lehký a přívětivý přístup pro začátečníky — žádná automatizace prohlížeče, jen HTTP requesty a parsování HTML. Taky mě naučil nejvíc o anti-scraping ochraně Amazonu.
Krok 1: Nastavte prostředí
Nainstalujte potřebné balíčky:
1pip install requests beautifulsoup4 pandas
Pak si nastavte importy:
1import requests
2from bs4 import BeautifulSoup
3import pandas as pd
4import random
5import time
Krok 2: Pošlete request s realistickými hlavičkami
Amazon blokuje requesty, které vypadají jako od botů. Základní obrana je User-Agent hlavička, která napodobuje skutečný prohlížeč. Tady je ukázka s aktuálními a realistickými User-Agent řetězci (zdroj: , březen 2026):
1USER_AGENTS = [
2 "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/147.0.0.0 Safari/537.36",
3 "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/147.0.0.0 Safari/537.36",
4 "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:149.0) Gecko/20100101 Firefox/149.0",
5 "Mozilla/5.0 (Macintosh; Intel Mac OS X 15.7; rv:149.0) Gecko/20100101 Firefox/149.0",
6 "Mozilla/5.0 (Macintosh; Intel Mac OS X 15_7_5) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.0 Safari/605.1.15",
7]
8headers = {"User-Agent": random.choice(USER_AGENTS)}
9url = "https://www.amazon.com/Best-Sellers-Electronics/zgbs/electronics/"
10response = requests.get(url, headers=headers)
11print(response.status_code) # Mělo by být 200
Pokud dostaneš stavový kód 200, jsi na správné cestě. Pokud vidíš 503 nebo tě Amazon přesměruje na CAPTCHA stránku, request byl odhalen.
Krok 3: Parsujte data o produktech pomocí BeautifulSoup
Zkontroluj HTML stránky v DevTools prohlížeče (pravé tlačítko → Inspect). Kontejnery produktů používají ID gridItemRoot. Uvnitř každého kontejneru najdeš název produktu, cenu, hodnocení a URL.
1soup = BeautifulSoup(response.text, "html.parser")
2products = []
3for item in soup.find_all("div", id="gridItemRoot"):
4 title_tag = item.find("div", class_="_cDEzb_p13n-sc-css-line-clamp-3_g3dy1")
5 price_tag = item.find("span", class_="_cDEzb_p13n-sc-price_3mJ9Z")
6 link_tag = item.find("a", class_="a-link-normal")
7 title = title_tag.get_text(strip=True) if title_tag else "N/A"
8 price = price_tag.get_text(strip=True) if price_tag else "N/A"
9 url = "https://www.amazon.com" + link_tag["href"] if link_tag else "N/A"
10 products.append({"Title": title, "Price": price, "URL": url})
Upozornění: Třídy začínající na
_cDEzb_jsou hashované CSS module selektory, které Amazon pravidelně mění. IDgridItemRoota třídaa-link-normalbývají stabilnější, ale před spuštěním scrapu si selektory vždy ověř v DevTools.
Krok 4: Export do CSV
1df = pd.DataFrame(products)
2df.to_csv("amazon_best_sellers.csv", index=False)
3print(f"Staženo {len(products)} produktů")
Co čekat — a co se pokazí
V mém testu tahle metoda vrátila asi 30 produktů místo 50. Není to chyba kódu — je to lazy loading od Amazonu. Po úvodním načtení se vykreslí jen asi 30 produktů; zbytek se objeví až po scrollování, což vyžaduje JavaScript, který requests neumí zpracovat.
Další omezení:
- Bez rotace proxy přijde blokace IP velmi rychle (mně Amazon zablokoval přístup po asi 15 requestech v rychlém sledu)
- CSS selektory se lámou pokaždé, když Amazon upraví rozložení stránky — a dělá to často
- Žádné hotové řešení stránkování
Na učení scrapování v Pythonu je to super. Pro produkční použití je to ale křehké.
Metoda 2: Scrapování Amazon Best Sellers pomocí Selenium
Selenium řeší problém lazy loadingu tím, že spouští skutečný prohlížeč — je těžší na nastavení, ale zachytí všech 50 produktů na stránku.
Krok 1: Nainstalujte Selenium
1pip install selenium pandas
Dobrá zpráva: od Selenium 4.6 už nepotřebujete webdriver-manager. Selenium Manager si stahování driverů řeší automaticky.
1from selenium import webdriver
2from selenium.webdriver.chrome.options import Options
3from selenium.webdriver.common.by import By
4from selenium.webdriver.common.keys import Keys
5import time
6import pandas as pd
7options = Options()
8options.add_argument("--headless=new")
9options.add_argument("--window-size=1920,1080")
10options.add_argument("--disable-blink-features=AutomationControlled")
11driver = webdriver.Chrome(options=options)
Přepínač --headless=new (představený v Chrome 109+) používá stejný renderovací pipeline jako běžný Chrome s oknem, takže ho Amazon hůř detekuje.
Krok 2: Proscrollujte přes lazy loading
Tohle je krok, díky kterému se Selenium vyplatí. Amazon Best Sellers načte zpočátku jen asi 30 produktů — zbytek se objeví až po scrollování.
1def scroll_page(driver, scrolls=5, delay=2):
2 for _ in range(scrolls):
3 driver.find_element(By.TAG_NAME, "body").send_keys(Keys.PAGE_DOWN)
4 time.sleep(delay)
5driver.get("https://www.amazon.com/Best-Sellers-Electronics/zgbs/electronics/")
6time.sleep(3)
7scroll_page(driver)
Po scrollování by se mělo v DOM vykreslit všech 50 produktů. Zjistil jsem, že 5 stisků Page Down s prodlevou 2 sekundy obvykle stačí, ale podle rychlosti připojení může být potřeba upravit.
Krok 3: Extrahujte data o produktech
1items = driver.find_elements(By.ID, "gridItemRoot")
2products = []
3for item in items:
4 try:
5 title = item.find_element(By.CSS_SELECTOR, "div._cDEzb_p13n-sc-css-line-clamp-3_g3dy1").text
6 except:
7 title = "N/A"
8 try:
9 price = item.find_element(By.CSS_SELECTOR, "span._cDEzb_p13n-sc-price_3mJ9Z").text
10 except:
11 price = "N/A"
12 try:
13 url = item.find_element(By.CSS_SELECTOR, "a.a-link-normal").get_attribute("href")
14 except:
15 url = "N/A"
16 products.append({"Title": title, "Price": price, "URL": url})
Použití try/except u každé položky je důležité — některé produkty mohou být vyprodané nebo mít chybějící pole a nechceš, aby jeden problematický element shodil celý scraping.
Krok 4: Ošetřete stránkování
Amazon rozděluje 100 Best Sellers do dvou stránek s různou strukturou URL:
1urls = [
2 "https://www.amazon.com/Best-Sellers-Electronics/zgbs/electronics/",
3 "https://www.amazon.com/Best-Sellers-Electronics/zgbs/electronics/ref=zg_bs_pg_2_electronics?_encoding=UTF8&pg=2"
4]
5all_products = []
6for url in urls:
7 driver.get(url)
8 time.sleep(3)
9 scroll_page(driver)
10 # ... extrakce produktů jako výše ...
11 all_products.extend(products)
12driver.quit()
Co čekat
V mém testu Selenium zachytilo všech 50 produktů na stránku — jasné vítězství nad requests + BS4. Nevýhoda: trvalo to asi 45 sekund na stránku (včetně prodlev při scrollování) a i tak jsem byl po příliš mnoha bězích bez rotace proxy odhalen. Selenium je navíc pro Amazon detekovatelné i s anti-detection příznaky — pro větší škálu budeš potřebovat další opatření (viz Anti-Ban Playbook níže).
Další slabiny:
- Nesoulad verzí WebDriveru se občas pořád objeví, i když Selenium Manager to výrazně omezil
- CSS selektory je potřeba upravit pokaždé, když Amazon změní DOM
- Vysoká spotřeba paměti — každá instance prohlížeče zabere 200–400 MB RAM
Metoda 3: Scrapování Amazon Best Sellers pomocí scraping API
Scraping API je přístup typu „nech těžkou práci na někom jiném“. Služby jako Scrape.do, Oxylabs a ScrapingBee se starají o rotaci proxy, renderování JavaScriptu i anti-bot opatření — ty jen pošleš URL a dostaneš HTML nebo JSON.
Jak to funguje
Pošleš cílovou URL na endpoint API. API stránku vyrenderuje na své infrastruktuře v reálném prohlížeči, rotuje proxy, ošetří CAPTCHA a vrátí čisté HTML. Ty pak vrácené HTML zpracuješ přes BeautifulSoup jako obvykle.
Krok 1: Pošlete request přes API
Tady je příklad se Scrape.do (ceny začínají na 29 USD/měsíc za 150 000 kreditů, 1 kredit = 1 request bez ohledu na renderování):
1import requests
2from bs4 import BeautifulSoup
3api_token = "YOUR_API_TOKEN"
4target_url = "https://www.amazon.com/Best-Sellers-Electronics/zgbs/electronics/"
5api_url = f"https://api.scrape.do?token={api_token}&url={target_url}&render=true&geoCode=us"
6response = requests.get(api_url)
7soup = BeautifulSoup(response.text, "html.parser")
Odtud je parsování stejné jako u metody 1 — stejné selektory, stejná logika extrakce.
Realita cen
Tady je přehled, kolik si hlavní API účtují za 1 000 Amazon requestů při nejlepší dostupné sazbě:
| Poskytovatel | Cena za 1 000 requestů | Poznámky |
|---|---|---|
| Scrape.do | cca $0.19 | Paušální sazba, bez násobků kreditů |
| Oxylabs | cca $1.80 | 5× násobek pro JS renderování |
| ScrapingBee | cca $4.90 | 5–25× násobky u prémiových funkcí |
| Bright Data | $5.00+ | Nejobsáhlejší data (686 polí / produkt), ale nejpomalejší (~66 s / request) |
Klady a zápory
Klady: Vysoká spolehlivost ( na Amazonu u top poskytovatelů), žádná údržba driveru, automatická anti-bot ochrana, dobrá škálovatelnost.
Zápory: Placené za každý request (náklady rostou ve velkém), stejně musíš psát parsovací kód a pořád hrozí změny CSS selektorů. U 100 000 stránek měsíčně je rozdíl v celkových nákladech dramatický: vlastní řešení vyjde zhruba na — úspora 71 %.
Bod zlomu bývá obvykle 500 tisíc až 1 milion requestů měsíčně. Pod touto hranicí převáží časová úspora API nad náklady.
Metoda 4: Scrapování Amazon Best Sellers pomocí Thunderbit (bez Pythonu)
Na rovinu: pracuji v Thunderbit, takže tuhle část ber s tím kontextem. Ale opravdu jsem všechny čtyři metody testoval za sebou a rozdíl v rychlosti získání dat byl výrazný.
je AI web scraper jako rozšíření do Chrome. Hlavní myšlenka: místo psaní CSS selektorů nebo Python kódu si AI přečte stránku a sama zjistí, jaká data má vytáhnout. Pro Amazon Best Sellers má Thunderbit předpřipravené šablony, které fungují na jedno kliknutí.
Krok 1: Nainstalujte rozšíření Thunderbit do Chrome
Přejdi do a klikni na „Přidat do Chromu“. Zaregistruj si bezplatný účet — free tier ti dá dost kreditů na vyzkoušení.
Krok 2: Otevřete stránku Amazon Best Sellers
Otevři v Chromu jakoukoli stránku kategorie Amazon Best Sellers. Například:
https://www.amazon.com/Best-Sellers-Electronics/zgbs/electronics/
Krok 3: Klikněte na „AI Suggest Fields“
Otevři postranní panel Thunderbit a klikni na „AI Suggest Fields“. AI analyzuje strukturu stránky a navrhne sloupce: Product Name, Price, Rating, Image URL, Vendor, Product URL a Rank. V mém testu správně rozpoznala všechna relevantní pole během asi 3 sekund.

Sloupce můžeš přejmenovat, smazat nebo přidat. Můžeš dokonce přidat vlastní AI prompt pro každé pole — například „zařaď jako Electronics/Apparel/Home“ a doplň ke každému produktu kategorii.
Krok 4: Klikněte na „Scrape“
Stiskni tlačítko „Scrape“. Thunderbit vyplní strukturovanou tabulku se všemi daty o produktech ze stránky. V cloud režimu zvládne až 50 stránek najednou paralelně a automaticky řeší lazy loading i stránkování.
Krok 5: Exportujte zdarma
Klikni na „Export“ a vyber cíl: Excel, Google Sheets, Airtable nebo Notion. Všechny exporty jsou zdarma ve všech plánech — bez skrytých poplatků.

Celý proces mi trval asi 90 sekund od otevření stránky po hotovou tabulku. Pro srovnání: metoda 1 zabrala asi 20 minut (včetně ladění lazy loadingu), metoda 2 asi 35 minut (včetně nastavení Selenium) a metoda 3 asi 15 minut (včetně založení účtu u API).
Proč Thunderbit funguje na Amazon dobře
Protože AI stránku čte pokaždé znovu, automaticky se přizpůsobí změnám rozložení — není potřeba spravovat CSS selektory. Tím přímo řeší nejčastější stížnost v diskuzích o scrapingu: „Základní web scraper nestačí, je potřeba přidávat spoustu ošetření změn prvků.“ Když Amazon změní DOM (což se děje často), nemusíš nic upravovat.
Cloudové scrapování transparentně řeší rotaci proxy, renderování i anti-bot opatření. Pro uživatele, kteří chtějí řešení typu „prostě to funguje“, tím odpadá celé trápení s blokacemi.
Anti-ban playbook: jak se vyhnout blokaci ze strany Amazonu
Amazon má agresivní detekci botů. Při testování mi Amazon dočasně zablokoval IP adresu a uživatelé na fórech hlásí totéž: „všude chyby, Amazon mě začal přesměrovávat na homepage.“ Pokud jdeš cestou Pythonu (metody 1–3), tahle část je zásadní.
Tady je vrstvená strategie od základních po pokročilé kroky:
1. Rotujte User-Agent řetězce
Posílat pořád stejný User-Agent je varovný signál. Použij sadu 5+ řetězců z ukázkového kódu v metodě 1 a u každého requestu vyber náhodně jeden:
1headers = {"User-Agent": random.choice(USER_AGENTS)}
2. Přidejte náhodné prodlevy mezi requesty
Pevné prodlevy jsou detekovatelné (vzory). Náhodné jsou bezpečnější:
1time.sleep(random.uniform(2, 5))
Zjistil jsem, že interval 2–5 sekund mezi requesty mě u menších dávek (pod 50 requestů) udržel pod radarem. U větších běhů bych to zvedl na 3–7 sekund.
3. Používejte rotaci proxy
Tohle je zásadní. ukazují, že rezidenční proxy mají na Amazonu průměrnou úspěšnost kolem 94 % oproti ~59 % u datacentrových proxy — rozdíl 35 procentních bodů. Amazon používá TLS fingerprinting, behaviorální analýzu a rate limiting podle IP, takže běžné datacentrové IP adresy jsou odhaleny během několika sekund.
Rezidenční proxy jsou dražší ($2–$12 za GB podle poskytovatele), ale výrazně spolehlivější. Příklad:
1proxies = {
2 "http": "http://user:pass@residential-proxy.example.com:8080",
3 "https": "http://user:pass@residential-proxy.example.com:8080"
4}
5response = requests.get(url, headers=headers, proxies=proxies)
4. Zpevněte fingerprint prohlížeče (Selenium)
1options.add_argument('--disable-blink-features=AutomationControlled')
2options.add_experimental_option("excludeSwitches", ["enable-automation"])
3options.add_experimental_option('useAutomationExtension', False)
4# Po inicializaci driveru odstraňte příznak navigator.webdriver
5driver.execute_cdp_cmd('Page.addScriptToEvaluateOnNewDocument', {
6 'source': "Object.defineProperty(navigator, 'webdriver', {get: () => undefined})"
7})
5. Spravujte relace a cookies
Uchovávání cookies mezi requesty dělá scraper podobnější skutečnému uživatelskému sezení:
1session = requests.Session()
2# Nejdřív navštivte homepage, abyste získali realistické cookies
3session.get("https://www.amazon.com", headers=headers)
4time.sleep(2)
5# Pak scrapujte cílovou stránku
6response = session.get(target_url, headers=headers)
6. Kdy se vyplatí obejít celé trápení
Pro uživatele, kteří nechtějí nic z toho řešit, Thunderbit cloud scraping transparentně zvládá rotaci proxy, renderování i anti-bot opatření. Scraping API navíc řeší většinu těchto věcí už v základu. Podle mých zkušeností často zabere ladění anti-ban problémů víc času než napsání samotného scraperu — takže přístup „prostě to funguje“ má skutečnou návratnost.
Obohacení o detailní stránky: jak získat bohatší data z produktových stránek
Stránka Best Sellers ukazuje jen základní informace — název, cenu, hodnocení, pořadí. Skutečná hodnota pro FBA research ale leží na detailních stránkách jednotlivých produktů. Tohle ti chybí, pokud scrapuješ jen listing:
| Pole | Listing stránka | Produktová detailní stránka |
|---|---|---|
| Název produktu | ✅ | ✅ |
| Cena | ✅ | ✅ |
| Hodnocení | ✅ | ✅ |
| BSR pořadí | ✅ | ✅ (včetně pořadí v podkategorii) |
| Značka | ❌ | ✅ |
| ASIN | ❌ | ✅ |
| Datum prvního uvedení | ❌ | ✅ |
| Rozměry / hmotnost | ❌ | ✅ |
| Počet prodejců | ❌ | ✅ |
| Odrážkové vlastnosti | ❌ | ✅ |
| Majitel Buy Boxu | ❌ | ✅ |
Pole „Date First Available“ je obzvlášť cenné — říká, jak dlouho je produkt na trhu, což je důležitý signál pro analýzu konkurence. A znalost počtu prodejců a vlastníka Buy Boxu pomáhá posoudit, jestli se do dané niky vůbec vyplatí vstupovat (pokud Amazon drží více než 30 % podílu Buy Boxu, je konkurence extrémně obtížná).
Python přístup: procházení URL produktů v cyklu
Po získání URL produktů z listing stránky projdi každou s pauzou:
1for product in products:
2 time.sleep(random.uniform(3, 6))
3 detail_response = session.get(product["URL"], headers={"User-Agent": random.choice(USER_AGENTS)})
4 detail_soup = BeautifulSoup(detail_response.text, "html.parser")
5 # Extrakce značky
6 brand_tag = detail_soup.find("a", id="bylineInfo")
7 product["Brand"] = brand_tag.get_text(strip=True) if brand_tag else "N/A"
8 # Extrakce ASIN z kódu stránky nebo URL
9 # Extrakce Date First Available z tabulky s detaily produktu
10 # ... další pole ...
Upřímné varování: návštěva 100 jednotlivých produktových stránek výrazně zvyšuje riziko blokace. Počítej s rotací proxy a delšími prodlevami.
Thunderbit přístup: scrapování podstránek jedním kliknutím
Po stažení listing stránky do tabulky klikni v Thunderbit na „Scrape Subpages“. AI navštíví každou URL produktu a automaticky obohatí tabulku o další sloupce — značka, ASIN, specifikace, funkce. Bez dalšího kódu, selektorů a nastavování. Je to obzvlášť užitečné pro e-commerce týmy, které potřebují kompletní obraz pro sourcingová rozhodnutí, ale nechtějí psát a udržovat parser detailních stránek.
Automatizace opakovaných scrapeů: sledujte Best Sellers v čase
Jednorázové stažení je užitečné, ale průběžný monitoring je místo, kde leží skutečná konkurenční výhoda. Sledování, které produkty rostou a klesají, včasné odhalování trendů a monitoring cenových posunů během týdnů či měsíců — to odděluje běžný průzkum od rozhodování založeného na datech.
Python přístup: plánování pomocí cron
Na Linuxu nebo Macu můžeš Python skript naplánovat pomocí cronu. Tady je záznam v crontabu pro denní scraping v 8:00:
10 8 * * * /usr/bin/python3 /home/user/amazon_scraper.py >> /home/user/logs/scrape.log 2>&1
Pro týdenní scraping každé pondělí v 9:00:
10 9 * * 1 /usr/bin/python3 /home/user/amazon_scraper.py >> /home/user/logs/scrape.log 2>&1
Na Windows použij Task Scheduler pro stejný efekt. Pokud chceš plánování bez nutnosti nechávat zapnutý notebook, nasaď to na VPS nebo AWS Lambda — ale tím přibude infrastruktura a složitost.
Přidej logging a chybová upozornění, abys zachytil neúspěšné běhy. Nic není horší než zjistit, že scraper ti tiše přestal fungovat před dvěma týdny.
Thunderbit přístup: Scheduled Scraper v běžné řeči
Thunderbit Scheduled Scraper ti umožní popsat interval přirozeným jazykem — napiš „každé pondělí v 9 ráno“ nebo „každý den v 8 ráno“ a AI plán pochopí. Scrapy běží na cloudových serverech Thunderbit (není potřeba žádný spuštěný prohlížeč ani počítač) a data se automaticky exportují do Google Sheets nebo Airtable. Vznikne tak živý monitoring dashboard bez správy serveru — ideální pro operations týmy, které chtějí mít přehled bez DevOps režie.
Právní a etické aspekty scrapování Amazonu
Nejsem právník a tohle není právní rada. Ale ignorovat právní rámec v návodu na scraping by bylo nezodpovědné — uživatelé na fórech se na podmínky používání ptají úplně oprávněně.
Amazon robots.txt: K roku 2026 obsahuje robots.txt Amazonu více než 80 konkrétních cest s Disallow, ale /gp/bestsellers/ není pro standardní user-agenty výslovně blokovaná. Nicméně více než 35 AI specifických user-agentů (ClaudeBot, GPTBot, Scrapy apod.) dostává plošné Disallow: /. To, že něco není výslovně zakázané, neznamená, že Amazon scrapování schvaluje.
Podmínky používání Amazonu: Amazonu (aktualizované v květnu 2025) výslovně zakazují „použití jakéhokoli automatizovaného procesu nebo technologie k přístupu, získávání, kopírování či monitorování jakékoli části webu Amazonu“ bez písemného souhlasu. To není teorie — Amazon v listopadu 2025 kvůli neautorizovanému automatizovanému přístupu a získal předběžné opatření.
Precedent hiQ v. LinkedIn: V případu (Ninth Circuit, 2022) soud rozhodl, že scrapování veřejně dostupných dat pravděpodobně neporušuje Computer Fraud and Abuse Act. hiQ ale nakonec uzavřelo dohodu a souhlasilo se zastavením scrapování — vítězství v rámci CFAA tě neochrání před žalobami z porušení smlouvy.
Praktická doporučení:
- Scrapuj pouze veřejně dostupná data (ceny, BSR, názvy produktů — ne osobní údaje)
- Respektuj rate limit a nepřetěžuj servery
- Používej data pro legitimní konkurenční analýzu
- Před velkoobjemovým scrapováním se poraď s vlastním právníkem
- Měj na paměti, že má dnes komplexní legislativu v oblasti ochrany soukromí
Cloudové scrapování Thunderbit používá standardní požadavky podobné běžnému prohlížeči, ale vždy si ověř soulad s právníkem ve své organizaci.
Kterou metodu byste měli použít? Rychlý rozhodovací průvodce
Stručně:
- „Učím se Python a chci projekt na víkend.“ → Metoda 1 (requests + BeautifulSoup). Naučíš se hodně o HTTP requestech, parsování HTML a anti-bot ochraně Amazonu.
- „Potřebuji scrapovat stránky s těžkým JavaScriptem nebo přihlášenými relacemi.“ → Metoda 2 (Selenium). Je těžkopádnější, ale zvládá dynamický obsah.
- „Dělám produkční scraping ve velkém.“ → Metoda 3 (Scraping API). Nech proxy a rendering na někom jiném. vychází ve prospěch API pod 500 tisíc requestů měsíčně.
- „Nejsem vývojář a chci data do 2 minut.“ → Metoda 4 (). Žádný kód, žádné selektory, žádná údržba.
- „Potřebuji průběžný monitoring bez správy serveru.“ → Thunderbit Scheduled Scraper. Nastavíš a zapomeneš.
Závěr a hlavní poznatky
Po víkendu testování mi zůstalo hlavně toto:
requests + BeautifulSoup je skvělé na učení, ale omezení lazy loadingu (jen asi 30 z 50 produktů) a křehké CSS selektory z něj dělají nepraktické řešení pro produkci.
Selenium řeší problém lazy loadingu a zachytí všech 50 produktů na stránku, ale je pomalé, náročné na paměť a Amazon ho pořád dokáže detekovat.
Scraping API nabízí nejlepší spolehlivost pro produkční scraping — na Amazonu — ale náklady rostou a stejně musíš psát parsovací kód.
Thunderbit jednoznačně přinesl nejrychlejší čas k datům. AI si poradí se změnami rozložení, lazy loadingem, stránkováním i anti-bot opatřeními bez jakékoli konfigurace. Pro netechnické uživatele nebo týmy, které potřebují opakovaná data bez DevOps režie, je to nejpraktičtější volba.
Největší ponaučení? Anti-bot obrana Amazonu a časté změny rozložení znamenají, že řešení bez údržby ti v dlouhodobém horizontu ušetří nejvíc času. Každá hodina strávená laděním rozbitých selektorů a rotací proxy je hodina, kterou nestrávíš skutečnou analýzou.
Chceš vyzkoušet no-code přístup? ti dá dost kreditů na stažení několika kategorií Best Sellers a můžeš si výsledky ověřit sám. Dáváš přednost Pythonu? Ukázky kódu výše by ti měly pomoct začít. V obou případech budeš mít data z Amazon Best Sellers v tabulce místo zírání do záložky v prohlížeči.
Další informace o přístupech ke scrapování webu najdeš v našich návodech na , a . Můžeš se také podívat na podrobné ukázky na .
Zjistit více