Etsy est une place de marché mondiale pour des articles uniques et créatifs. Ce guide vous explique comment extraire des fiches produits, des informations de boutique, des avis et des articles tendance avec Evocrawl.
npm install @mendable/evocrawl-js zod
Lorsque vous scrappez Etsy, vous chercherez généralement à :
- Extraire les fiches produit et leurs variantes
- Récupérer les informations sur les boutiques et leurs évaluations
- Suivre les articles et catégories tendance
- Suivre les prix et les données de vente
- Extraire les avis clients
Extrayez des données structurées de type listing à l’aide de schémas Zod.
import EvocrawlApp from '@mendable/evocrawl-js';
import { z } from 'zod';
// Définir le schéma Zod
const ListingSchema = z.object({
title: z.string(),
price: z.string(),
shopName: z.string(),
rating: z.number()
});
const evocrawl = new EvocrawlApp({ apiKey: process.env.EVOCRAWL_API_KEY });
const result = await evocrawl.scrape('https://www.etsy.com/listing/1844315896/handmade-925-sterling-silver-jewelry-set', {
formats: [{
type: 'json',
schema: z.toJSONSchema(ListingSchema)
}],
});
// Analyser et valider avec Zod
const jsonData = typeof result.json === 'string' ? JSON.parse(result.json) : result.json;
const validated = ListingSchema.parse(jsonData);
console.log('✅ Données de l'annonce validées :');
console.log(validated);
Trouvez des produits sur la marketplace Etsy.
import EvocrawlApp from '@mendable/evocrawl-js';
const evocrawl = new EvocrawlApp({ apiKey: process.env.EVOCRAWL_API_KEY });
const searchResult = await evocrawl.search('handmade jewelry site:etsy.com', {
limit: 10,
sources: [{ type: 'web' }], // { type: 'news' }, { type: 'images' }
scrapeOptions: {
formats: ['markdown']
}
});
console.log(searchResult);
Scraper une seule fiche produit Etsy.
import EvocrawlApp from '@mendable/evocrawl-js';
const evocrawl = new EvocrawlApp({ apiKey: process.env.EVOCRAWL_API_KEY });
const result = await evocrawl.scrape('https://www.etsy.com/listing/1844315896/handmade-925-sterling-silver-jewelry-set', {
formats: ['markdown'], // par ex. html, links, etc.
onlyMainContent: true
});
console.log(result);
Découvrez toutes les URL disponibles dans une boutique ou une catégorie Etsy. Remarque : Map renvoie uniquement les URL, sans leur contenu.
import EvocrawlApp from '@mendable/evocrawl-js';
const evocrawl = new EvocrawlApp({ apiKey: process.env.EVOCRAWL_API_KEY });
const mapResult = await evocrawl.map('https://www.etsy.com/shop/YourShopName');
console.log(mapResult.links);
// Renvoie un tableau d'URL sans contenu
Explorer plusieurs pages d’une boutique ou d’une catégorie Etsy.
import EvocrawlApp from '@mendable/evocrawl-js';
const evocrawl = new EvocrawlApp({ apiKey: process.env.EVOCRAWL_API_KEY });
const crawlResult = await evocrawl.crawl('https://www.etsy.com/c/jewelry', {
limit: 10,
scrapeOptions: {
formats: ['markdown']
}
});
console.log(crawlResult.data);
Extraire plusieurs URL d’annonces Etsy simultanément.
import EvocrawlApp from '@mendable/evocrawl-js';
const evocrawl = new EvocrawlApp({ apiKey: process.env.EVOCRAWL_API_KEY });
// Attendre la fin
const job = await evocrawl.batchScrape([
'https://www.etsy.com/listing/1844315896/handmade-925-sterling-silver-jewelry-set',
'https://www.etsy.com/market/handmade_jewelry',
'https://www.etsy.com/market/jewelry_handmade'],
{
options: {
formats: ['markdown']
},
pollInterval: 2,
timeout: 120
}
);
console.log(job.status, job.completed, job.total);
console.log(job);