Passer au contenu principal

Shop::eBay - scraper de résultats de recherche eBay

img

Présentation du scraper

En utilisant le scraper de produits eBay, vous pouvez extraire des données de la fiche produit, constituer une base de liens vers les produits, suivre la dynamique des prix, l'évolution du nombre de vendeurs, collecter les notes et le nombre d'avis sur les produits, ainsi que récupérer les images des produits.

Les fonctionnalités d'A-Parser permettent de sauvegarder les paramètres de collecte de données pour une utilisation ultérieure (présélections), de définir un calendrier de collecte et bien plus encore. Vous pouvez utiliser la multiplication automatique des requêtes, la substitution de sous-requêtes à partir de fichiers, l'itération de combinaisons alphanumériques et de listes pour obtenir le maximum de résultats possible.

Données collectées

Données collectées
  • Nom du produit
  • Lien vers le produit
  • Image du produit
  • Prix et ancien prix
  • Devise
  • Note et nombre de commentaires
  • Nombre de vendeurs
  • Informations complémentaires

Cas d'utilisation

  • Collecte de liens vers les produits
  • Évaluation de la popularité des produits
  • Suivi de la dynamique des prix et de la popularité des produits

Requêtes

Comme requêtes, il est nécessaire d'indiquer les noms des produits, exactement comme si vous les saisissiez directement dans le formulaire de recherche eBay, par exemple :

mi band 6
iPhone 11
kingston CanvasGo+
AMD Ryzen R3 2200U

Substitutions de requêtes

Vous pouvez utiliser les macros intégrées pour multiplier les requêtes, par exemple si nous voulons obtenir une très grande base de produits par marques

philips
sony
xiaomi
samsung

Dans le format des requêtes, nous indiquerons une itération de caractères de a à zzzz, cette méthode permet de faire pivoter au maximum les résultats de recherche et d'obtenir de nombreux nouveaux résultats uniques :

$query {az:a:zzzz}

Cette macro créera 475254 requêtes supplémentaires pour chaque requête de recherche initiale, ce qui donnera au total 4 x 475254 = 1901016 requêtes de recherche, un chiffre impressionnant, mais ce n'est pas du tout un problème pour A-Parser. À une vitesse de 2000 requêtes par minute, une telle tâche sera traitée en seulement 16 heures.

Variantes d'affichage des résultats

A-Parser supporte un formatage flexible des résultats grâce au moteur de gabarit intégré Template Toolkit, ce qui lui permet d'afficher les résultats sous une forme libre, ainsi que structurée, par exemple en CSV ou JSON

Affichage du nom, du nouveau et de l'ancien prix, de la devise

Format du résultat :

$products.format('$title, $price, $old_price, $currency\n')

Exemple de résultat :

Xiaomi Mi Band 4 Global Version Smart Bracelet 0.95" Color Screen 50M Waterproof, 44.99, , $
Protective Film for Xiaomi youpin haylou ls02 ls01 Solar ls05 Color I Band 5, 5.97, , $
IP68 Waterproof SmartWatch ECG PPG Blood Pressure Heart Rate sports Wristwatch, 48.75, 52.99, $
Bluetooth Smart Watch Heart Rate Blood Pressure Bracelet For iPhone XS Xiaomi Mi, 38.63, 44.99, $

Affichage du nom, du prix et de la devise

Format du résultat :

$products.format('Nom: $title, Prix: $price, Devise: $currency\n')

Exemple de résultat :

Nom: Newest 2021 Xiaomi Mi Band 6 Blood Oxygen Fitness Tracker Heart Rate Monitor, Prix: 63.99, Devise: $
Nom: Original Xiaomi Mi Band 6 Wristband AMOLED Color Screen - 2021!, Prix: 20.00, Devise: $
Nom: Newest 2021 Xiaomi Mi Band 6 Blood Oxygen Fitness Tracker Heart Rate Monitor, Prix: 63.99, Devise: $
Nom: Xiaomi Mi Band 6 Smart fitness bracelet, Prix: 62.99, Devise: $
Nom: Xiaomi Mi Band 6 Blood Oxygen Fitness Tracker Heart Rate Monitor Sports Bracelet, Prix: 63.99, Devise: $
Nom: MI 6 Band 6 Smart 1.56" AMOLED Retina Colourful Screen Blood SpO2 Heart Fitness, Prix: 82.74, Devise: $
Nom: Xiaomi Mi Smart Band 6 1.56' Amoled Blood Oxygen Fitness Tracker Sport Bracelet, Prix: 65.99, Devise: $

Affichage du nom, du prix et de la différence entre le nouveau et l'ancien prix dans un tableau CSV

Format du résultat :

[% FOREACH item IN products;  
diff = item.old_price ? item.old_price - item.price : 0;
tools.CSVline(item.title, item.price, diff);
END %]

Exemple de résultat :

"Xiaomi Mi Band 4 Global Version Smart Bracelet 0.95"" Color Screen 50M Waterproof",44.99,0
"IP68 Waterproof SmartWatch ECG PPG Blood Pressure Heart Rate sports Wristwatch",48.75,4.24
"Protective Film for Xiaomi youpin haylou ls02 ls01 Solar ls05 Color I Band 5",5.97,0
"Bluetooth Smart Watch Heart Rate Blood Pressure Bracelet For iPhone XS Xiaomi Mi",38.63,6.36
"Men Sports Smart Watch ECG PPG Blood Pressure Heart Rate Phone Mate for iPhone",48.75,4.24

Affichage du résultat avec la date de collecte dans un tableau CSV

Format du résultat :

[% USE date;
d = date.format(mytime, format = "%Y %d %H:%M");
FOREACH item IN products;
tools.CSVline(d, item.title, item.price, item.link);
END %]

Exemple de résultat :

"2021 16 18:23","Newest 2021 Xiaomi Mi Band 6 Blood Oxygen Fitness Tracker Heart Rate Monitor",63.99,https://www.ebay.com/itm/Newest-2021-Xiaomi-Mi-Band-6-Blood-Oxygen-Fitness-Tracker-Heart-Rate-Monitor/124659632314
"2021 16 18:23","Original Xiaomi Mi Band 6 Wristband AMOLED Color Screen - 2021!",20.00,https://www.ebay.com/itm/Original-Xiaomi-Mi-Band-6-Wristband-AMOLED-Color-Screen-2021/153992931607
"2021 16 18:23","Newest 2021 Xiaomi Mi Band 6 Blood Oxygen Fitness Tracker Heart Rate Monitor",63.99,https://www.ebay.com/itm/Newest-2021-Xiaomi-Mi-Band-6-Blood-Oxygen-Fitness-Tracker-Heart-Rate-Monitor/133729672537
"2021 16 18:23","Xiaomi Mi Band 6 Smart fitness bracelet",62.99,https://www.ebay.com/itm/Xiaomi-Mi-Band-6-Smart-fitness-bracelet/353451130097
"2021 16 18:23","Xiaomi Mi Band 6 Blood Oxygen Fitness Tracker Heart Rate Monitor Sports Bracelet",63.99,https://www.ebay.com/itm/Xiaomi-Mi-Band-6-Blood-Oxygen-Fitness-Tracker-Heart-Rate-Monitor-Sports-Bracelet/164811614943

Affichage dans un tableau CSV

Format du résultat :

[% FOREACH item IN products; 
tools.CSVline(item.link, item.title, item.price, item.old_price, item.rating, item.reviews_count);
END %]

Texte initial :

Lien vers le produit, Nom du produit, Prix, Ancien prix, Note, Nombre de commentaires

Exemple de résultat :

Lien vers le produit, Nom du produit, Prix, Ancien prix, Note, Nombre de commentaires
https://www.ebay.com/itm/Newest-2021-Xiaomi-Mi-Band-6-Blood-Oxygen-Fitness-Tracker-Heart-Rate-Monitor/124659632314,"Newest 2021 Xiaomi Mi Band 6 Blood Oxygen Fitness Tracker Heart Rate Monitor",63.99,,,
https://www.ebay.com/itm/Original-Xiaomi-Mi-Band-6-Wristband-AMOLED-Color-Screen-2021/153992931607,"Original Xiaomi Mi Band 6 Wristband AMOLED Color Screen - 2021!",20.00,,,
https://www.ebay.com/itm/Xiaomi-Mi-Band-6-Blood-Oxygen-Fitness-1-56-AMOLED-Tracker-Heart-Rate-Bracelet/284256075838,"Xiaomi Mi Band 6 Blood Oxygen Fitness 1.56"" AMOLED Tracker Heart Rate Bracelet",60.79,63.99,,
https://www.ebay.com/itm/Xiaomi-Mi-Smart-Band-6-1-56-AMOLED-Blood-Oxygen-Fitness-Tracker-Sport-Bracelet/194003608270,"Xiaomi Mi Smart Band 6 1.56' AMOLED Blood Oxygen Fitness Tracker Sport Bracelet ",61.99,77.69,,
https://www.ebay.com/itm/Xiaomi-Mi-band-6-Xiaomi-smart-2021-Newest-1-56/154411997162,"Xiaomi Mi band 6 Xiaomi smart 2021 Newest 1.56'",58.99,,,
astuce

Dans le Format des résultats, on utilise le moteur de gabarit Template Toolkit pour afficher le tableau $products dans une boucle FOREACH.

Pour que l'option "Texte initial" soit disponible dans l'Éditeur de tâches, il faut activer "Plus d'options". Dans "Texte initial", nous inscrivons les noms des colonnes séparés par des virgules et nous laissons la deuxième ligne vide.

Sauvegarde au format SQL

Format du résultat :

[% FOREACH item IN products;
"INSERT INTO products VALUES('" _ item.title _ "', '"; item.link _ "', '"; item.price _ "', '"; item.currency _ "')\n";
END %]

Exemple de résultat :

INSERT INTO products VALUES('Newest 2021 Xiaomi Mi Band 6 Blood Oxygen Fitness Tracker Heart Rate Monitor', 'https://www.ebay.com/itm/Newest-2021-Xiaomi-Mi-Band-6-Blood-Oxygen-Fitness-Tracker-Heart-Rate-Monitor/124659632314', '63.99', '$')
INSERT INTO products VALUES('Original Xiaomi Mi Band 6 Wristband AMOLED Color Screen - 2021!', 'https://www.ebay.com/itm/Original-Xiaomi-Mi-Band-6-Wristband-AMOLED-Color-Screen-2021/153992931607', '20.00', '$')
INSERT INTO products VALUES('Newest 2021 Xiaomi Mi Band 6 Blood Oxygen Fitness Tracker Heart Rate Monitor', 'https://www.ebay.com/itm/Newest-2021-Xiaomi-Mi-Band-6-Blood-Oxygen-Fitness-Tracker-Heart-Rate-Monitor/133729672537', '63.99', '$')
INSERT INTO products VALUES('Xiaomi Mi Band 6 Smart fitness bracelet', 'https://www.ebay.com/itm/Xiaomi-Mi-Band-6-Smart-fitness-bracelet/353451130097', '62.99', '$')
INSERT INTO products VALUES('Xiaomi Mi Band 6 Blood Oxygen Fitness Tracker Heart Rate Monitor Sports Bracelet', 'https://www.ebay.com/itm/Xiaomi-Mi-Band-6-Blood-Oxygen-Fitness-Tracker-Heart-Rate-Monitor-Sports-Bracelet/164811614943', '63.99', '$')
INSERT INTO products VALUES('MI 6 Band 6 Smart 1.56" AMOLED Retina Colourful Screen Blood SpO2 Heart Fitness', 'https://www.ebay.com/itm/MI-6-Band-6-Smart-1-56-AMOLED-Retina-Colourful-Screen-Blood-SpO2-Heart-Fitness/224414937192', '82.74', '$')

Dump des résultats en JSON

Format de sortie general:

[% IF notFirst;
",\n";
ELSE;
notFirst = 1;
END;

obj = {};
obj.query = query;
obj.items = [];

FOREACH item IN p1.products;
obj.items.push({
link = item.link
title = item.title
price = item.price
});
END;

obj.json %]

Texte initial:

[

Texte final:

]

Exemple de résultat :

[
{
"query": "mi band 6",
"items": [
{
"link": "https://www.ebay.com/itm/Mens-Smart-Watch-Fitness-Activity-Tracker-Wristwatch-for-iPhone-Samsung-Android/233817567751",
"name": "Men's Smart Watch Fitness Activity Tracker Wristwatch for iPhone Samsung Android",
"price": "48.75"
},
{
"link": "https://www.ebay.com/itm/Mens-Smart-Watch-Fitness-Activity-Tracker-Wristwatch-for-iPhone-Samsung-Android/233817567751",
"name": "Men's Smart Watch Fitness Activity Tracker Wristwatch for iPhone Samsung Android",
"price": "48.75"
},
{
"link": "https://www.ebay.com/itm/Mens-Smart-Watch-Fitness-Activity-Tracker-Wristwatch-for-iPhone-Samsung-Android/233817567751",
"name": "Men's Smart Watch Fitness Activity Tracker Wristwatch for iPhone Samsung Android",
"price": "48.75"
},
{
"link": "https://www.ebay.com/itm/Mens-Smart-Watch-Fitness-Activity-Tracker-Wristwatch-for-iPhone-Samsung-Android/233817567751",
"name": "Men's Smart Watch Fitness Activity Tracker Wristwatch for iPhone Samsung Android",
"price": "48.75"
}
]
}
]
astuce

Pour que les options "Texte initial" et "Texte final" soient disponibles dans l'Éditeur de tâches, il faut activer "Plus d'options".

Paramètres possibles

ParamètreValeur par défautDescription
Pages count5Nombre de pages à scraper
Items per page50Nombre de produits par page
Ebay domainUnited StatesSélection du domaine qui sera utilisé pour la collecte de données