Dans le vaste monde de la récupération de données de commerce électronique, Scraping AliExpress avec Python se distingue comme un guide essentiel pour les passionnés de données chevronnés et novices. Ce guide vous guide en douceur à travers le didacticiel étape par étape de scraping AliExpress à l'aide Base d'exploration Crawling API.

Cliquez ici pour passer directement à la première étape au cas où vous voudriez sauter l'introduction.

Table des matières

  1. Pour commencer
  • Bref aperçu du Web Scraping
  • Importance de scraper AliExpress
  • Introduction à Crawlbase Crawling API
  1. Configuration de votre environnement
  • Installation de Python et des bibliothèques essentielles
  • Créer un environnement virtuel
  • Obtention d'un jeton API Crawlbase
  1. Comprendre la structure du site Web AliExpress
  • Présentation des pages de recherche d'AliExpress
  • Présentation des pages produits AliExpress
  • Inspection du code HTML pour identifier les points de données clés
  1. Utilisation de la bibliothèque Python Crawlbase
  • Importation et initialisation de la classe CrawlingAPI
  • Effectuer des requêtes HTTP sur AliExpress
  • Gestion des paramètres et personnalisation des réponses
  1. Récupération des pages de recherche et de produits AliExpress
  • Récupération des pages de résultats de recherche AliExpress
  • Gestion de la pagination sur les pages de résultats de recherche
  • Récupération des pages de produits AliExpress
  1. Stocker des données
  • Stockage des données récupérées dans un fichier CSV
  • Stockage des données récupérées dans une base de données SQLite
  1. Mot de la fin
  2. FAQ - Foire Aux Questions

Pour commencer

Maintenant que vous êtes ici, retroussons nos manches et entrons dans le vif du sujet du scraping Web AliExpress à l'aide de Base d'exploration Crawling API avec Python. Mais d'abord, décomposons les éléments de base que vous devez comprendre avant de plonger dans les détails techniques.

Bref aperçu du Web Scraping

Dans un monde où l'information règne en maître, grattage web C'est l'art et la science d'extraire des données à partir de sites Web. C'est une compétence de détective numérique qui vous permet d'accéder, de collecter et d'organiser des données à partir du paysage vaste et en constante évolution d'Internet.

Considérez le scraping Web comme un pont entre vous et un trésor d'informations en ligne. Que vous soyez un stratège commercial, un analyste de données, un chercheur en marketing ou simplement une personne avide d'informations basées sur les données, le scraping Web est votre clé pour exploiter la richesse des données qui se trouvent sur le Web. Des prix des produits et des avis aux tendances du marché et aux stratégies des concurrents, le scraping Web vous permet d'accéder aux données inestimables cachées dans le labyrinthe des pages Web.

Importance de scraper AliExpress

Importance de scraper AliExpress

L'extraction de données sur AliExpress avec Python est devenue une stratégie essentielle pour les passionnés de données et les analystes du commerce électronique du monde entier. AliExpress, une plateforme de vente au détail en ligne appartenant au groupe Alibaba, n'est pas seulement une plateforme commerciale, mais un véritable trésor de données qui n'attend qu'à être exploré. Avec des millions de produits, de nombreux vendeurs et une clientèle mondiale, AliExpress fournit un vaste ensemble de données à ceux qui recherchent un avantage concurrentiel dans le commerce électronique.

En récupérant les données d'AliExpress avec Python, vous pouvez parcourir efficacement la plateforme à la recherche d'informations sur les produits, les tendances de prix, les comportements des vendeurs et les avis des clients, ce qui vous permet d'obtenir des informations précieuses sur le paysage en constante évolution de la vente au détail en ligne. Imaginez les avantages stratégiques d'avoir accès à des données en temps réel sur les prix des produits, les tendances et les avis des clients. Envisagez de garder une longueur d'avance sur vos concurrents en surveillant en permanence la dynamique du marché, en suivant les dernières sorties de produits et en optimisant votre stratégie de tarification sur la base de décisions solides et fondées sur des données.

Lorsque vous utilisez des techniques de scraping Web, en particulier avec des outils puissants comme Crawlbase Crawling API, vous améliorez vos capacités de collecte de données, ce qui en fait une arme redoutable dans votre arsenal de données de commerce électronique.

Introduction à Crawlbase Crawling API

Notre allié clé dans cette entreprise de scraping Web est le Base d'exploration Crawling API. Cet outil robuste est votre ticket d'entrée pour naviguer dans le monde complexe du scraping Web, en particulier lorsque vous traitez avec des plateformes colossales comme AliExpress. L'une de ses fonctionnalités les plus remarquables est la rotation IP, qui s'apparente à un changement d'identité dans le monde numérique. Imaginez-vous enfiler divers déguisements tout en naviguant dans une rue bondée ; il garantit qu'AliExpress vous considère comme un utilisateur régulier, réduisant considérablement le risque d'être signalé comme un scraper. Cela garantit un processus d'extraction de données fluide et ininterrompu.

Les scrapers intégrés de cette API adaptés à AliExpress la rendent encore plus remarquable. En plus du scraper AliExpress, Crawling API fournissent également des scrapers intégrés pour d'autres sites Web importants. Vous pouvez en savoir plus à leur sujet iciCes outils préconçus simplifient le processus en extrayant efficacement les données des pages de recherche et de produits d'AliExpress. Pour un démarrage facile, Crawlbase propose 1000 XNUMX requêtes d'exploration gratuites. Que vous soyez novice en matière de scraping Web ou professionnel chevronné, Crawlbase Crawling API, avec sa rotation IP et ses scrapers spécialisés, est votre arme secrète pour extraire les données d'AliExpress de manière efficace et éthique.

Dans les sections suivantes, nous vous fournirons toutes les connaissances et tous les outils dont vous avez besoin pour scraper AliExpress de manière efficace et éthique. Vous configurerez votre environnement, comprendrez la structure du site Web d'AliExpress et vous familiariserez avec Python, le langage de programmation qui sera votre allié dans cette entreprise.

Configuration de votre environnement

Avant de nous lancer dans notre aventure de scraping Web sur AliExpress, il est essentiel de préparer le bon environnement. Cette section vous guidera à travers les étapes essentielles pour configurer votre environnement, en vous assurant de disposer de tous les outils nécessaires pour scraper avec succès AliExpress à l'aide de Crawlbase Crawling API.

Installation de Python et des bibliothèques essentielles

Python est le langage de programmation de choix pour notre aventure de scraping Web. Si Python n'est pas encore installé sur votre système, suivez ces étapes :

  1. Télécharger Python: Visiter le Site officiel de Python et téléchargez la dernière version de Python pour votre système d'exploitation.
  2. en un clic:Exécutez le programme d’installation Python téléchargé et suivez les instructions d’installation.
  3. Vérification:Ouvrez votre invite de commande ou votre terminal et tapez python --version pour vérifier que Python a été correctement installé. Vous devriez voir la version de Python installée affichée.

Maintenant que Python est opérationnel, il est temps d'installer certaines bibliothèques essentielles qui nous aideront dans notre parcours de scraping. Nous vous recommandons d'utiliser pip, le gestionnaire de paquets de Python, à cette fin. Ouvrez votre invite de commande ou votre terminal et entrez les commandes suivantes :

1
2
pip installer des pandas
pip installe crawlbase

Pandas:Il s'agit d'une bibliothèque puissante pour la manipulation et l'analyse des données, qui sera essentielle pour organiser et traiter les données que nous récupérons sur AliExpress.

Base d'exploration:Cette bibliothèque nous permettra de faire des requêtes aux API Crawlbase, simplifiant ainsi le processus de récupération des données d'AliExpress.

Créer un environnement virtuel (facultatif)

Bien que cela ne soit pas obligatoire, il est considéré comme une bonne pratique de créer un environnement virtuel pour votre projet. Cette étape garantit que les dépendances de votre projet sont isolées, réduisant ainsi le risque de conflits avec d'autres projets Python.

Pour créer un environnement virtuel, suivez ces étapes :

  1. Installer Virtualenv:Si vous n'avez pas installé Virtualenv, vous pouvez l'installer en utilisant pip :
1
pip installer virtualenv
  1. Créer un environnement virtuel:Accédez à votre répertoire de projet dans l'invite de commande ou le terminal et exécutez la commande suivante pour créer un environnement virtuel nommé « env » (vous pouvez remplacer « env » par votre nom préféré) :
1
virtualenv env
  1. Activer l'environnement virtuel:Selon votre système d’exploitation, utilisez l’une des commandes suivantes pour activer l’environnement virtuel :
  • Pour Windows:
1
.\env\Scripts\activer
  • Pour macOS et Linux:
1
source env/bin/activer

Vous saurez que l’environnement virtuel est actif lorsque vous verrez le nom de l’environnement dans votre invite de commande ou votre terminal.

Obtention d'un jeton API Crawlbase

Nous utiliserons Crawlbase Crawling API pour collecter efficacement des données à partir de divers sites Web. Cette API rationalise l'ensemble du processus d'envoi Requêtes HTTP aux sites Web, gère de manière transparente la rotation des adresses IP et s'attaque efficacement aux problèmes Web courants tels que les CAPTCHA. Voici le guide étape par étape pour obtenir votre jeton API Crawlbase :

  1. Rendez-vous sur le site Web de Crawlbase: Commencez par ouvrir votre navigateur Web et accédez au site officiel Base d'exploration en ligne.

  2. Inscription ou Connexion:Selon votre statut, vous devrez soit créer un nouveau compte Crawlbase, soit vous connecter à votre compte existant.

  3. Récupérez votre jeton API: Une fois connecté, recherchez la section de documentation sur le site Web pour accéder à votre jeton API. Crawlbase fournit deux types de jetons : le jeton Normal (TCP) et le jeton JavaScript (JS). Le jeton Normal convient aux sites Web avec des modifications minimales, comme les sites statiques. Cependant, si le site Web s'appuie sur JavaScript pour ses fonctionnalités ou si des données cruciales sont générées via JavaScript côté utilisateur, le jeton JavaScript est essentiel. Par exemple, lorsque vous récupérez des données à partir de sites Web dynamiques comme AliExpress, le jeton Normal est votre choix de prédilection. Vous pouvez obtenir votre jeton API ici.

  4. Protégez votre jeton API: Votre jeton d'API est un atout précieux, il est donc essentiel de le sécuriser. Évitez de le partager publiquement et de le transmettre à des systèmes de contrôle de version comme Git. Ce jeton d'API fera partie intégrante de votre code Python, vous permettant d'accéder à Crawlbase Crawling API de manière efficace.

Avec Pandas et la bibliothèque Crawlbase installés, un jeton API Crawlbase en main et éventuellement dans un environnement virtuel, vous êtes désormais équipé des outils essentiels pour commencer à extraire des données d'AliExpress à l'aide de Python. Dans les sections suivantes, nous approfondirons le processus et vous guiderons à travers chaque étape.

Comprendre la structure du site Web AliExpress

Pour devenir compétent dans l'utilisation de Crawlbase Crawling API Pour AliExpress, il est essentiel d'avoir une compréhension fondamentale de la structure du site Web. AliExpress utilise une mise en page spécifique pour ses pages de recherche et de produits. Dans cette section, nous allons nous pencher sur la mise en page des pages de recherche et des pages de produits d'AliExpress, en préparant le terrain pour l'utilisation des capacités de scraping intégrées de l'API Crawlbase.

Présentation des pages de recherche d'AliExpress

Les pages de recherche AliExpress servent de passerelle pour découvrir des produits en fonction de vos critères de recherche. Ces pages se composent de plusieurs éléments essentiels :

Page de recherche AliExpress
  • Barre de recherche:La barre de recherche est l'endroit où les utilisateurs saisissent des mots-clés, des noms de produits ou des catégories pour lancer leur recherche.
  • Options de filtrage : AliExpress propose différents filtres pour affiner les résultats de recherche avec précision. Ces filtres incluent les fourchettes de prix, les options d'expédition, les évaluations des produits, etc.
  • Listes de produits:Affichées sous forme de grille, les listes de produits présentent des images, des titres, des prix et des informations sur le vendeur. Chaque liste est encapsulée dans un conteneur HTML, souvent désigné par des classes ou des identifiants spécifiques.
  • Pagination:En raison du vaste catalogue de produits, les résultats de recherche sont répartis sur plusieurs pages. Les contrôles de pagination, notamment les boutons « Suivant » et « Précédent », permettent aux utilisateurs de naviguer dans les pages de résultats.

Il est essentiel de comprendre la composition structurelle des pages de recherche AliExpress pour utiliser efficacement l'API Crawlbase afin d'extraire les données souhaitées. Dans les sections suivantes, nous verrons comment interagir par programmation avec ces éléments de page, en utilisant les capacités de scraping de Crawlbase.

Présentation des pages de produits AliExpress

En cliquant sur une liste de produits, les utilisateurs sont redirigés vers une page produit dédiée. Ici, des informations détaillées sur un produit spécifique sont présentées. Les éléments clés trouvés sur les pages de produits AliExpress incluent :

Page produit AliExpress
  • Titre et description du produit:Ces sections contiennent des données textuelles complètes sur le produit, notamment ses caractéristiques, ses spécifications et son utilisation recommandée. L'extraction de ces informations est essentielle pour le catalogage et l'analyse des produits.
  • Galerie des médias:AliExpress inclut souvent une galerie multimédia contenant des images et, parfois, des vidéos. Ces aides visuelles offrent aux acheteurs potentiels une vue globale du produit.
  • Prix ​​et informations sur le vendeur:Ce segment fournit des données essentielles concernant le prix du produit, les détails d'expédition, les évaluations du vendeur et les coordonnées. Ces informations aident les utilisateurs à prendre des décisions d'achat éclairées.
  • Avis clients:Les avis et notes fournis par les acheteurs précédents offrent des informations précieuses sur la qualité du produit, sa fonctionnalité et la fiabilité du vendeur. La collecte et l'analyse de ces avis peuvent être utiles pour évaluer les produits.
  • Options d'achat:AliExpress offre aux utilisateurs la possibilité d'ajouter le produit à leur panier pour un achat ultérieur ou de lancer une transaction immédiate. L'extraction de ces informations permet de surveiller la disponibilité des produits et les changements de prix.

Grâce à une solide maîtrise de la conception du site Web d'AliExpress, nous sommes bien préparés à tirer parti de Crawlbase Crawling API pour rationaliser le processus d'extraction des données. Les sections suivantes aborderont les aspects pratiques de l'utilisation de l'API pour le scraping de données AliExpress.

Utilisation de la bibliothèque Python Crawlbase

Maintenant que nous avons établi les bases pour comprendre la structure du site Web d'AliExpress, examinons l'application pratique de la bibliothèque Python Crawlbase pour rationaliser le processus de scraping Web. Cette section vous guidera à travers les étapes nécessaires pour exploiter la puissance de Crawlbase Crawling API de manière efficace.

Importation et initialisation de la classe CrawlingAPI

Pour commencer, vous devrez importer la bibliothèque Python Crawlbase et initialiser le CrawlingAPI classe. Cette classe agit comme passerelle pour effectuer des requêtes HTTP vers AliExpress et récupérer des données structurées. Voici un exemple de base pour commencer :

1
2
3
4
de base d'exploration importer API d'exploration

# Initialisez l'API Crawlbase avec votre jeton API
api = API d'exploration({ 'jeton': 'VOTRE_JETON_CRAWLBASE' })

Assurez-vous de remplacer « YOUR_CRAWLBASE_TOKEN » par votre jeton API Crawlbase réel, que vous avez obtenu pendant le processus de configuration.

Effectuer des requêtes HTTP sur AliExpress

Le CrawlingAPI Une fois la classe instanciée, vous pouvez désormais effectuer des requêtes HTTP vers AliExpress. Crawlbase simplifie considérablement ce processus. Pour extraire des données d'une page de recherche AliExpress spécifique, vous devez spécifier l'URL de cette page. Par exemple :

1
2
3
4
5
# Définissez l'URL de la page de recherche AliExpress que vous souhaitez récupérer
aliexpress_search_url = 'https://www.aliexpress.com/wholesale?SearchText=your-search-query-here'

# Effectuer une requête HTTP GET vers l'URL spécifiée
réponse = api.get(aliexpress_search_url)

Crawlbase gérera la requête HTTP pour vous et l'objet de réponse contiendra le contenu HTML de la page.

Gestion des paramètres et personnalisation des réponses

Lorsque vous utilisez la bibliothèque Python Crawlbase, vous avez la possibilité de personnaliser vos requêtes en incluant divers paramètres pour adapter le comportement de l'API à vos besoins. Vous pouvez en savoir plus à leur sujet iciCertains d’entre eux dont nous avons besoin sont les suivants.

Paramètre du grattoir

La série scraper Le paramètre vous permet de spécifier le type de données que vous souhaitez extraire d'AliExpress. Crawlbase propose des scrapers prédéfinis pour les types de pages AliExpress courants. Vous pouvez choisir parmi les options suivantes :

  • aliexpress-product: Utilisez ce scraper pour les pages de produits AliExpress. Il extrait des informations détaillées sur un produit spécifique. Voici un exemple de son utilisation :
1
réponse = api.get(aliexpress_search_url, {'grattoir': 'produit aliexpress'})
  • aliexpress-serp: Ce scraper est conçu pour les pages de résultats de recherche AliExpress. Il renvoie un tableau de produits à partir des résultats de recherche. Voici comment l'utiliser :
1
réponse = api.get(aliexpress_search_url, {'grattoir': 'aliexpress-serp'})

Veuillez noter que scraper Le paramètre est facultatif. Si vous ne l'utilisez pas, vous recevrez le code HTML complet de la page, ce qui vous donnera la liberté d'effectuer un scraping personnalisé. Avec scraper paramètre, la réponse reviendra au format JSON.

Paramètre de mise en forme

La série format Le paramètre vous permet de définir le format de la réponse que vous recevez de l'API Crawlbase. Vous pouvez choisir entre deux formats : json or html. Le format par défaut est htmlVoici comment spécifier le format :

1
réponse = api.get(aliexpress_search_url, {'format': 'json'})
  • Réponse HTML: Si vous sélectionnez le format de réponse HTML (qui est le format par défaut), vous recevrez le contenu HTML de la page en guise de réponse. Les paramètres de réponse seront ajoutés aux en-têtes de réponse.
1
2
3
4
5
6
7
En-têtes:
url: https://www.aliexpress.com/wholesale?SearchText=laptop+accessories
statut_original: 200
pc_status: 200

Les chuchotements :
HTML de la page
  • Réponse JSON:Si vous choisissez le format de réponse json, vous recevrez un objet JSON que vous pourrez facilement analyser. Cet objet JSON contient toutes les informations dont vous avez besoin, y compris les paramètres de réponse.
1
2
3
4
5
6
{
"état_original": "200",
"pc_status": 200,
"url": "https%3A%2F%2Faliexpress.com%2F/wholesale%3FSearchText%3Dlaptop+accessories",
"corps": "HTML de la page"
}

Ces paramètres vous offrent la flexibilité nécessaire pour récupérer des données dans le format qui correspond le mieux à vos besoins en matière de scraping Web et de traitement des données. Selon votre cas d'utilisation, vous pouvez opter pour la réponse JSON pour les données structurées ou la réponse HTML pour un scraping plus personnalisé.

Récupération des pages de recherche et de produits d'AliExpress

Dans cette section, nous allons approfondir l'aspect pratique du scraping d'AliExpress à l'aide de Crawlbase Crawling APINous aborderons trois aspects clés : l'extraction des pages de résultats de recherche AliExpress, la gestion de la pagination sur ces pages de résultats et l'extraction des pages de produits AliExpress. Nous utiliserons la requête de recherche water bottle et extrairons les résultats liés à cette requête de recherche. Vous trouverez ci-dessous des exemples de code Python pour chacune de ces tâches, ainsi que des explications.

Récupération des pages de résultats de recherche AliExpress

Pour extraire les pages de résultats de recherche d'AliExpress, nous utilisons le scraper « aliexpress-serp », un scraper intégré spécialement conçu pour extraire les informations sur les produits à partir des résultats de recherche. Le code initialise Crawlbase Crawling API, envoie une requête HTTP GET à une URL de recherche AliExpress, en spécifiant le scraper « aliexpress-serp », et extrait les données du produit de la réponse JSON.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
de base d'exploration importer API d'exploration
importer json

# Initialisez l'API Crawlbase avec votre jeton API
api = API d'exploration({ 'jeton': 'VOTRE_JETON_CRAWLBASE' })

# Définissez l'URL de la page de recherche AliExpress que vous souhaitez récupérer
aliexpress_search_url = 'https://www.aliexpress.com/wholesale?SearchText=water+bottle'

# Effectuez une requête HTTP GET vers l'URL spécifiée à l'aide du scraper « aliexpress-serp »
réponse = api.get(aliexpress_search_url, {'grattoir': 'aliexpress-serp'})

if réponse['code_d'état']== 200:
# Chargement de JSON à partir du corps de la réponse après le décodage des données d'octets
response_json = json.loads(réponse['corps'].décoder('latin1'))

# Obtenir les résultats du scraper
scraper_result = réponse_json['corps']

# Imprimer les données récupérées
impression(json.dumps(scraper_result, indent=2))

Exemple de sortie :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
{
"des produits": [
{
« Titre »: "Bouteille d'eau en plastique de voyage anti-fuite pour fille, portable, anti-chute, fruits, sans BPA, créative",
"prix": {
"actuel": « 4.99 $ US »
},
"url": "https://www.aliexpress.com/item/4000576944298.html?algo_pvid=8d89f35c-7b12-4d10-a1c5-7fddeece5237&algo_expid=8d89f35c-7b12-4d10-a1c5-7fddeece5237-0&btsid=0ab6d70515838441863703561e47cf&ws_ab_test=searchweb0_0,searchweb201602_,searchweb201603_",
"image": "https://ae01.alicdn.com/kf/Hd0fdfd6d7e5f4a63b9383223500f704be/480ml-Creative-Fruit-Plastic-Water-Bottle-BPA-Free-Portable-Leak-Proof-Travel-Drinking-Bottle-for-Kids.jpg_220x220xz.jpg_.webp",
"message d'expédition": "Livraison gratuite",
"nombre de ventes": 177,
"ratingValue": 5,
"RatingLink": "https://www.aliexpress.com/item/4000576944298.html?algo_pvid=8d89f35c-7b12-4d10-a1c5-7fddeece5237&algo_expid=8d89f35c-7b12-4d10-a1c5-7fddeece5237-0&btsid=0ab6d70515838441863703561e47cf&ws_ab_test=searchweb0_0,searchweb201602_,searchweb201603_#feedback",
"Informations sur le vendeur": {
"nom du magasin": « Magasin Boxihome »,
« Lien de magasin »: "https://www.aliexpress.com/store/5001468"
}
},
{
« Titre »: "Bouteille à jus de citron avec infuseur en plastique transparent pour fruits, grande capacité, pour le sport, 800 ml/600 ml",
"prix": {
"actuel": « 3.17 $ - 4.49 $ US »
},
"url": "https://www.aliexpress.com/item/4000162032645.html?algo_pvid=8d89f35c-7b12-4d10-a1c5-7fddeece5237&algo_expid=8d89f35c-7b12-4d10-a1c5-7fddeece5237-1&btsid=0ab6d70515838441863703561e47cf&ws_ab_test=searchweb0_0,searchweb201602_,searchweb201603_",
"image": "https://ae01.alicdn.com/kf/H688cb15d9cd94fa58692294fa6780b59f/800ml-600ml-Large-Capacity-Sports-Fruit-Lemon-Juice-Drinking-Bottle-Infuser-Clear-Portable-Plastic-Water-Bottle.jpg_220x220xz.jpg_.webp",
"message d'expédition": "Livraison gratuite",
"nombre de ventes": 1058,
"ratingValue": 4.6,
"RatingLink": "https://www.aliexpress.com/item/4000162032645.html?algo_pvid=8d89f35c-7b12-4d10-a1c5-7fddeece5237&algo_expid=8d89f35c-7b12-4d10-a1c5-7fddeece5237-1&btsid=0ab6d70515838441863703561e47cf&ws_ab_test=searchweb0_0,searchweb201602_,searchweb201603_#feedback",
"Informations sur le vendeur": {
"nom du magasin": "Boutique Shop5112149",
« Lien de magasin »: "https://www.aliexpress.com/store/5112149"
}
},

],
"Recherches associées": [
{
« Titre »: « Eau + Bouteilles »,
"lien": "https://www.aliexpress.com/w/wholesale-Water%252BBottles.html"
},
{
« Titre »: « Bouteilles d'eau »,
"lien": "https://www.aliexpress.com/w/wholesale-Water-Bottles.html"
},

],
« Catégories associées »: [
{
« Titre »: "Maison et jardin",
"lien": "https://www.aliexpress.com/w/wholesale-water-bottle.html?CatId=15"
},
{
« Titre »: « Bouteilles d'eau »,
"lien": "https://www.aliexpress.com/w/wholesale-water-bottle.html?CatId=100004985"
},

]
}

Gestion de la pagination sur les pages de résultats de recherche

Pour parcourir plusieurs pages de résultats de recherche, vous pouvez augmenter le numéro de page dans l'URL de recherche. Cet exemple illustre le concept de base de la pagination, qui vous permet d'extraire des données à partir de pages suivantes.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
de base d'exploration importer API d'exploration
importer json

# Initialisez l'API Crawlbase avec votre jeton API
api = API d'exploration({ 'jeton': 'VOTRE_JETON_CRAWLBASE' })

# Définissez l'URL de base de la page de recherche AliExpress que vous souhaitez récupérer
base_url = 'https://www.aliexpress.com/wholesale?SearchText=water+bottle&page={}'

# Initialiser une liste pour stocker tous les résultats de recherche récupérés
tous_produits_grattés = []

# Définissez le nombre de pages que vous souhaitez récupérer
num_pages_à_scrape = 5

pour numéro_de_page in gamme(1, nombre_de_pages_à_scraper + 1):
# Construire l'URL de la page actuelle
aliexpress_search_url = url_de_base.le format(page_numéro)

# Effectuez une requête HTTP GET vers l'URL spécifiée à l'aide du scraper « aliexpress-serp »
réponse = api.get(aliexpress_search_url, {'grattoir': 'aliexpress-serp'})

if réponse['code_d'état']== 200:
# Chargement de JSON à partir du corps de la réponse après le décodage des données d'octets
response_json = json.loads(réponse['corps'].décoder('latin1'))
# Obtenir les résultats du scraper
scraper_result = réponse_json['corps']
# Ajouter les produits récupérés de la page actuelle à la liste
tous_produits_grattés.extend(résultat_grattoir[« produits »])

Dans ce code, nous construisons les URL des pages de résultats de recherche pour chaque page en incrémentant le numéro de page dans l'URL. Nous parcourons ensuite le nombre de pages spécifié, effectuons des requêtes sur chaque page, extrayons les produits de chaque résultat de recherche à l'aide du scraper « aliexpress-serp » et les ajoutons à une liste (all_scraped_products). Cela vous permet de récupérer et de consolider efficacement les résultats de recherche de plusieurs pages.

Récupération des pages de produits AliExpress

Lors de l'extraction des pages de produits AliExpress, nous utilisons le scraper « aliexpress-product », conçu pour l'extraction d'informations détaillées sur les produits. Le code initialise l'API Crawlbase, envoie une requête HTTP GET à une URL de page de produit AliExpress, en spécifiant le scraper « aliexpress-product », et extrait les données produit de la réponse JSON.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
de base d'exploration importer API d'exploration
importer json

# Initialisez l'API Crawlbase avec votre jeton API
api = API d'exploration({ 'jeton': 'VOTRE_JETON_CRAWLBASE' })

# Définissez l'URL d'une page de produit AliExpress que vous souhaitez récupérer
aliexpress_product_url = 'https://www.aliexpress.com/item/4000275547643.html'

# Effectuez une requête HTTP GET vers l'URL spécifiée à l'aide du scraper « aliexpress-product »
réponse = api.get(aliexpress_product_url, {'grattoir': 'produit aliexpress'})

if réponse['code_d'état']== 200:
# Chargement de JSON à partir du corps de la réponse après le décodage des données d'octets
response_json = json.loads(réponse['corps'].décoder('latin1'))

# Obtenir les résultats du scraper
scraper_result = réponse_json['corps']

# Imprimer les données récupérées
impression(json.dumps(scraper_result, indent=2))

Exemple de sortie :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
{
« Titre »: "Coque de luxe transparente mate pour iPhone 11 Pro XS MAX XR X Coque de téléphone hybride antichoc en silicone pour iPhone 6 6s 7 8 Plus",
"prix": {
"actuel": « 3.45 $ US »,
"original": « 4.31 $ US »,
"rabais": "-20%"
},
"options": [
{
"prénom": "Matériel",
"valeurs": [
"pour iPhone 6 6S",
"pour 6Plus 6SPlus",

]
},
{
"prénom": "Couleur",
"valeurs": [
"Noir",
"Bleu",

}
],
"url": "https://www.aliexpress.com/item/4000275547643.html",
« Image principale »: "https://ae01.alicdn.com/kf/H0913e18b6ff9415e86db047607c6fb9dB/Luxury-Transparent-Matte-Case-For-iphone-11-Pro-XS-MAX-XR-X-Hybrid-Shockproof-Silicone-Phone.jpg",
"images": [
"https://ae01.alicdn.com/kf/H0913e18b6ff9415e86db047607c6fb9dB/Luxury-Transparent-Matte-Case-For-iphone-11-Pro-XS-MAX-XR-X-Hybrid-Shockproof-Silicone-Phone.jpg",
"https://ae01.alicdn.com/kf/H1507016f0a504f35bbf2ec0d5763d14c4/Luxury-Transparent-Matte-Case-For-iphone-11-Pro-XS-MAX-XR-X-Hybrid-Shockproof-Silicone-Phone.jpg",

],
"Avis client": {
"moyenne": 4.8,
"commentairesCount": 146
},
"nombre de ventes": 1184,
"Offre disponible": « 3 % de réduction supplémentaire (2 pièces ou plus) »,
"quantité disponible": 37693,
"liste de souhaitsCount": 983,
"Informations sur le vendeur": {
"nom du magasin": « Boutique numérique YiPai »,
« Lien de magasin »: "https://www.aliexpress.com/store/2056153",
"Rétroaction": « 92.9 % de commentaires positifs »,
"nombre d'abonnés": 462
},
"ExpéditionRésumé": {
"prix d'expédition": « Livraison : 0.41 USD »,
"destination": « vers l'Autriche via China Post Ordinary Small Packet Plus »,
"Livraison estimée": "Livraison estimée : 25-46 jours"
},
« Protection de l'acheteur »: [
« Protection de l'acheteur de 60 jours »,
« Garantie de remboursement »
],
« recommandations »: [
{
"lien": "https://www.aliexpress.com/item/33053895974.html?gps-id=pcDetailBottomMoreThisSeller&scm=1007.13339.146401.0&scm_id=1007.13339.146401.0&scm-url=1007.13339.146401.0&pvid=ae985f4e-3eca-4c9e-a788-1f37bd5ff3e0",
"prix": « 1.55 $ US »,
"image": "https://ae01.alicdn.com/kf/H604ad80f527c4b119e3bdb1be20b74cal.jpg_220x220q90.jpg_.webp"
},

],
"la description": {
"Images détaillées": [
"https://ae01.alicdn.com/kf/Hccaa2c9bf726484f94792998d93cc802Y.jpg",
"https://ae01.alicdn.com/kf/Hffe2339701634534a2fc4d5e183ff0aee.jpg",

],
« Produits associés »: [
{
« Titre »: "Coque en silicone ultra fine pour iPhone 7 6 6s 8 X Coque de protection en TPU souple aux couleurs acidulées pour iPhone 7 8 plus XS MAX XR",
"prix": « 1.29-1.50 USD »,
"lien": "https://www.aliexpress.com/item/Ultra-Slim-Silicone-Case-for-iphone-7-6-6s-8-X-Cover-Coque-Candy-Colors-Soft/32772422277.html",
"image": "https://ae01.alicdn.com/kf/H5d0d6ac957ee4f57942ec172a7ed3529v.jpg_120x120.jpg"
},

]
},
« Catégories de magasins »: [
{
« parentNode »: "Pour étui iPhone",
« parentNodeLink »: "https://www.aliexpress.com/store/group/For-iPhone-case/2056153_507217422.html",
« Noeuds enfants »: [
{
« Noeud enfant »: "Pour iPhone 5 5S SE",
« childNodeLink »: "https://www.aliexpress.com/store/group/For-iPhone-5-5S-SE/2056153_507296208.html"
},

]
},

]
}

Ces exemples de code fournissent un guide étape par étape sur la façon d'utiliser Crawlbase Crawling API pour extraire les pages de résultats de recherche et les pages de produits d'AliExpress. Les scrapers intégrés simplifient le processus, en vous assurant de recevoir des données structurées au format JSON, ce qui facilite la gestion et le traitement des informations extraites. Cette approche est précieuse pour diverses applications, telles que le suivi des prix, l'analyse de marché et la recherche concurrentielle sur la plateforme AliExpress.

Stocker des données

Après avoir récupéré avec succès les données des pages AliExpress, l'étape cruciale suivante consiste à stocker ces précieuses informations pour une analyse et une référence ultérieures. Dans cette section, nous allons explorer deux méthodes courantes de stockage des données : l'enregistrement des données récupérées dans un fichier CSV et leur stockage dans une base de données SQLite. Ces méthodes vous permettent d'organiser et de gérer efficacement vos données récupérées.

Stockage des données récupérées dans un fichier CSV

Le format CSV (Comma-Separated Values) est largement utilisé pour stocker des données tabulaires et est particulièrement utile lors du scraping d'AliExpress avec Python. Il s'agit d'un moyen simple et lisible par l'homme de stocker des données structurées, ce qui en fait un excellent choix pour enregistrer les données de vos produits AliExpress récupérés.

Nous allons étendre notre script de récupération de pages de recherche précédent pour inclure une étape permettant de sauvegarder certaines informations importantes à partir des données récupérées dans un fichier CSV à l'aide de la bibliothèque Python populaire, pandas. Voici une version mise à jour du script :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
importer pandas as pd
de base d'exploration importer API d'exploration
importer json

# Initialisez l'API Crawlbase avec votre jeton API
api = API d'exploration({ 'jeton': 'VOTRE_JETON_CRAWLBASE' })

# Définissez l'URL de base de la page de recherche AliExpress que vous souhaitez récupérer
base_url = 'https://www.aliexpress.com/wholesale?SearchText=water+bottle&page={}'

# Initialiser une liste pour stocker toutes les données des produits récupérés
données_produits_grattées = []

# Définissez le nombre de pages que vous souhaitez récupérer
num_pages_à_scrape = 5

pour numéro_de_page in gamme(1, nombre_de_pages_à_scraper + 1):
# Construire l'URL de la page actuelle
aliexpress_search_url = url_de_base.le format(page_numéro)

# Effectuez une requête HTTP GET vers l'URL spécifiée à l'aide du scraper « aliexpress-serp »
réponse = api.get(aliexpress_search_url, {'grattoir': 'aliexpress-serp'})

if réponse['code_d'état']== 200:
# Chargement de JSON à partir du corps de la réponse après le décodage des données d'octets
response_json = json.loads(réponse['corps'].décoder('latin1'))
# Obtenir les résultats du scraper
scraper_result = réponse_json['corps']

# Ajoutez les données des produits récupérés de la page actuelle à la liste
pour produits in résultat du grattoir[« produits »]:
données = {
« Titre »: produit['Titre'],
"prix": produit['prix']['courant'],
"notation": produit['ratingValue']
}
scraped_products_data.push(données)

# Enregistrer les données récupérées sous forme de fichier CSV
df = pd.DataFrame(données_produits_grattées)
df.to_csv('aliexpress_products_data.csv', indice=Faux)

Dans ce script mis à jour, nous avons introduit pandas, une puissante bibliothèque de manipulation et d'analyse de données. Après avoir récupéré et accumulé les détails du produit dans le scraped_products_data liste, nous créons un DataFrame pandas à partir de ces données. Ensuite, nous utilisons le to_csv méthode pour enregistrer le DataFrame dans un fichier CSV nommé « aliexpress_products_data.csv » dans le répertoire actuel. index=False garantit que nous n'enregistrons pas l'index du DataFrame en tant que colonne séparée dans le fichier CSV.

Vous pouvez facilement travailler avec et analyser vos données récupérées en utilisant pandas. Ce fichier CSV peut être ouvert dans divers logiciels de tableur ou importé dans d'autres outils d'analyse de données pour une exploration et une visualisation plus approfondies.

Stockage des données récupérées dans une base de données SQLite

Si vous préférez une approche plus structurée et plus conviviale pour le stockage des données, SQLite est un moteur de base de données léger et sans serveur qui peut être un excellent choix. Vous pouvez créer une table de base de données pour stocker vos données extraites, ce qui permet une récupération et une manipulation efficaces des données. Voici comment vous pouvez modifier le script de la page de recherche pour stocker des données dans une base de données SQLite :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
importer json
importer sqlite3
de bs4 importer BeautifulSoup
de base d'exploration importer API d'exploration

# Initialisez la classe CrawlingAPI avec votre jeton API Crawlbase
api = API d'exploration({'jeton': 'VOTRE_JETON_CRAWLBASE'})

# Initialiser une liste pour stocker toutes les données des produits récupérés
données_produits_grattées = []

# Définissez le nombre de pages que vous souhaitez récupérer
num_pages_à_scrape = 5

def créer_base de données
conn = sqlite3.connect('aliexpress_products.db')
curseur = conn.curseur()
curseur.execute('''CRÉER UNE TABLE SI IL N'EXISTE PAS de produits (
id INTEGER CLÉ PRIMAIRE AUTO-INCRÉMENTATION,
titre TEXTE,
prix TEXTE,
note TEXTE
)''')
conn.commit()
conn.close()

def enregistrer_dans_la_base_de_données(données,):
conn = sqlite3.connect('aliexpress_products.db')
curseur = conn.curseur()

# Créer une liste de tuples à partir des données
data_tuples = [(produit['Titre'], produit['prix'], produit['notation']) pour produits in données]

# Insérer des données dans la table des produits
curseur.executemany('' '
INSÉRER DANS les produits (titre, prix, note)
VALEURS (?, ?, ?)
'' ', tuples_de_données)

conn.commit()
conn.close()

pour numéro_de_page in gamme(1, nombre_de_pages_à_scraper + 1):
# Construire l'URL de la page actuelle
aliexpress_search_url = url_de_base.le format(page_numéro)

# Effectuez une requête HTTP GET vers l'URL spécifiée à l'aide du scraper « aliexpress-serp »
réponse = api.get(aliexpress_search_url, {'grattoir': 'aliexpress-serp'})

if réponse['code_d'état']== 200:
# Chargement de JSON à partir du corps de la réponse après le décodage des données d'octets
response_json = json.loads(réponse['corps'].décoder('latin1'))
# Obtenir les résultats du scraper
scraper_result = réponse_json['corps']

# Ajoutez les données des produits récupérés de la page actuelle à la liste
pour produits in résultat du grattoir[« produits »]:
données = {
« Titre »: produit['Titre'],
"prix": produit['prix']['courant'],
"notation": produit['ratingValue']
}
scraped_products_data.push(données)

# Créer la base de données et la table des produits
créer_base_de_données()

# Insérer les données récupérées dans la base de données SQLite
save_to_database(données_produits_grattées)

Dans ce code mis à jour, nous avons ajouté des fonctions pour créer la base de données et la table SQLite ( create_database ) et enregistrer les données récupérées dans la base de données ( save_to_database ). La fonction create_database vérifie si la base de données et la table existent et les crée si ce n'est pas le cas. La fonction save_to_database insère les données récupérées dans la table « products ».

En exécutant ce code, vous stockerez vos données de produits AliExpress récupérées dans une base de données SQLite nommée « aliexpress_products.db ». Vous pouvez ensuite récupérer et manipuler ces données à l'aide de requêtes SQL ou y accéder par programmation dans vos projets Python.

Mot de la fin

Puisque nous parlons de scraping Web, si vous êtes curieux d'approfondir encore plus et d'élargir votre compréhension en explorant l'extraction de données d'autres géants du commerce électronique comme Walmart, Amazon, je vous recommande de consulter le Page de blog de Crawlbase.

Nos guides complets ne s'arrêtent pas là ; nous offrons une mine de connaissances sur le scraping d'une variété de plateformes de commerce électronique populaires, vous assurant ainsi d'être bien équipé pour relever les défis présentés par chaque architecture de site Web unique. comment récupérer les pages de recherche d'Amazon et Guide sur le scraping de Walmart.

FAQ - Foire Aux Questions

Q : Quels sont les avantages de l'utilisation de Crawlbase Crawling API pour le scraping Web, et en quoi diffère-t-il des autres méthodes de scraping ?

La Crawlbase Crawling API L'API offre plusieurs avantages pour le scraping Web par rapport aux méthodes traditionnelles. Tout d'abord, elle permet la rotation des adresses IP et des agents utilisateurs, ce qui réduit la probabilité que des sites Web comme AliExpress détectent et bloquent les activités de scraping. Ensuite, elle propose des scrapers intégrés adaptés à des sites Web spécifiques, simplifiant ainsi le processus d'extraction des données. Enfin, elle offre la flexibilité de recevoir des données aux formats HTML et JSON, permettant aux utilisateurs de choisir le format qui convient le mieux à leurs besoins de traitement des données. Cette API rationalise et améliore l'expérience de scraping Web, ce qui en fait un choix privilégié pour le scraping de données d'AliExpress et d'autres sites Web.

Q : Puis-je utiliser ce guide pour extraire des données de n’importe quel site Web, ou est-il spécifique à AliExpress ?

Bien que le guide se concentre principalement sur le scraping d'AliExpress à l'aide de Crawlbase Crawling API, les concepts et techniques fondamentaux abordés ici sont applicables au scraping Web en général. Vous pouvez appliquer ces principes pour extraire des données d'autres sites Web, mais gardez à l'esprit que chaque site Web peut avoir des structures, des conditions de service et des défis de scraping différents. Assurez-vous toujours de disposer des droits et autorisations nécessaires pour extraire des données d'un site Web spécifique.

Q : Comment puis-je éviter d'être bloqué ou signalé comme scrapeur lors du scraping Web sur AliExpress ?

Pour minimiser le risque d’être bloqué, utilisez des techniques telles que Rotation IP et la rotation de l'agent utilisateur, qui sont pris en charge par Crawlbase Crawling API. Ces techniques vous aident à imiter le comportement de navigation humain, ce qui réduit la probabilité qu'AliExpress vous identifie comme un scraper. De plus, évitez de faire trop de demandes sur une courte période et respectez les conditions d'utilisation du site Web. Un scraping responsable est moins susceptible d'entraîner des blocages ou des perturbations.

Q : Puis-je récupérer les prix des produits AliExpress et utiliser ces données pour fixer le prix de mes propres produits ?

Bien que la collecte des prix des produits à des fins d'analyse de marché soit un cas d'utilisation courant et légitime, il est essentiel de veiller à respecter les conditions de service d'AliExpress et toutes les réglementations légales concernant l'utilisation des données. La tarification de vos propres produits en fonction des données collectées peut être une stratégie compétitive, mais vous devez vérifier l'exactitude des données et vous préparer à leur évolution au fil du temps. De plus, tenez compte des aspects éthiques et juridiques lorsque vous utilisez des données collectées pour des décisions commerciales.