Cookbook·E-commerce·kohls.com

Scraper les prix, paliers de promotion et stock en magasin de Kohl’s

Prix normal, prix promotionnel, la promotion qui s’applique, l’éligibilité Kohl’s Cash et la disponibilité en retrait par ZIP depuis kohls.com. Sans browser.

99.0% de réussite · Aug 2026Aucun browser nécessairePrix Complexe · 2 crédits

Mesuré sur Crawlbase

99.0% de réussite en August 2026. Kohl’s se trouve dans le tier complexe : il oppose un challenge aux récupérations simples, et Crawlbase le franchit pour vous, ce qui explique qu’une page coûte deux crédits et ne nécessite toujours aucun browser de votre côté. 1.3% des appels réussis ont utilisé le token JavaScript.

L’appel

Lancer dans le Playground
# Product page, rendered HTML
curl "https://api.crawlbase.com/?token=YOUR_TOKEN&country=US&url=https%3A%2F%2Fwww.kohls.com%2Fproduct%2Fprd-6248533%2Fsonoma-goods-for-life-mens-supersoft-crewneck-tee.jsp"

# Same page, stock for the store nearest a ZIP
curl "https://api.crawlbase.com/?token=YOUR_TOKEN&country=US&cookies=zipCode%3D60601&url=https%3A%2F%2Fwww.kohls.com%2Fproduct%2Fprd-6248533%2Fsonoma-goods-for-life-mens-supersoft-crewneck-tee.jsp"

Les paramètres qui comptent

ParamètreValeurPourquoi
countryUSKohl’s sert une page de blocage aux sorties hors États-Unis. Définissez-le sur chaque appel.
javascriptlaisser videLes prix, le palier de promotion et le texte promo sont dans un bloc JSON dans le HTML. Presque chaque appel réussi du mois mesuré a tourné sans browser.
cookieszipCode=<zip>Définit le magasin utilisé pour la disponibilité en retrait. Sans lui vous obtenez la valeur nationale par défaut, qui n’est pas une réponse de stock.
autoparsepas encorePas de scraper dédié. Le JSON embarqué est stable et les champs ci-dessous en découlent directement.

Les champs que vous obtenez, depuis le JSON embarqué

productTitlestring
webIDstring
price.regularPricenumber
price.salePricenumber | null
price.promoTextstring
kohlsCashEligibleboolean
SKUS[].sizestring
SKUS[].availabilitystring
storeAvailabilityobject
reviews.averageRatingnumber

Ce qui casse, et la solution

Les pages de catégorie paginent par WS=, pas par numéro de page. Le décalage est le nombre d’articles déjà vus, par pas de 48. Un mauvais pas renvoie à nouveau la première page et vous croirez que la catégorie compte 48 articles.
Les prix promotionnels dépendent du jour. Kohl’s lance des promotions qui basculent à minuit, heure du Centre. Si vous comparez des prix de part et d’autre d’un changement de jour, vous verrez des variations fantômes ; horodatez chaque ligne avec l’heure de récupération.
Rien à résoudre de votre côté. Le challenge que Kohl’s oppose aux clients simples est géré à l’intérieur de Crawlbase ; c’est pour cela que le tier est complexe, et pour cela que vous n’avez pas besoin de browser.

Lancez-la de façon planifiée

Une veille de prix quotidienne sur 50 000 produits représente 100 000 crédits par jour à deux crédits la page. Utilisez le Crawler pour lisser les pics et passez le ZIP en cookie par job quand vous suivez le stock par magasin.

Questions

Pourquoi une page Kohl’s coûte-t-elle deux crédits ?

Kohl’s est dans le tier complexe. Crawlbase franchit son challenge anti-bot pour vous ; le prix reflète ce travail, et il ne nécessite toujours aucun browser.

Puis-je obtenir le stock en magasin ?

Oui. Passez cookies=zipCode=<zip> et lisez storeAvailability dans le JSON embarqué.

Les noms de sites identifient les pages qu’une recette récupère. Crawlbase n’est affilié à aucun site listé. Utilisez les recettes dans le cadre de la politique d’utilisation acceptable.Chiffres mesurés de August 2026, actualisés chaque mois