---
title: "Gerapy Web Scraping : Guide de déploiement de Scrapy en pile complète"
slug: web-scraping-with-gerapy
date: 2025-06-08T09:05:00+00:00
modified: 2025-11-04T08:50:00+00:00
permalink: https://brightdata.fr/blog/donnees-web/web-scraping-with-gerapy
type: blog
---

[ Blog ](https://brightdata.fr/blog "Blog") / [Données Web](https://brightdata.fr/blog/donnees-web)







 [Données Web](https://brightdata.fr/blog/donnees-web)

# Gerapy Web Scraping : Guide de déploiement de Scrapy en pile complète

Maîtrisez le scraping web avec Gerapy. Ce guide couvre l’installation, les corrections d’erreurs, les conseils de déploiement, et plus encore.

 12 min de lecture





 [ ![Jacob Nulty](https://media.brightdata.fr/2024/12/Jacob-Nulty-50x50.jpg) ](https://brightdata.com/blog/authors/jake-nulty)

 [Jake Nulty

Technical Writer

 ](https://brightdata.com/blog/authors/jake-nulty)





 ![Web Scraping with Gerapy blog image](https://media.brightdata.fr/2025/05/Web-Scraping-with-Gerapy.svg)





[Gerapy](https://github.com/Gerapy/Gerapy) est une solution complète pour le déploiement de [Scrapy](/blog/savoir-faire/web-scraping-with-scrapy). Si vous regardez l’[historique des livraisons](https://github.com/Gerapy/Gerapy/commits/master/?after=7c4eda875563f5d0342a3650959e0502bc279d77+34), il a reçu quelques modifications de dépendances mais n’a pas vraiment été mis à jour depuis 2022. Démarrer Gerapy peut être un processus difficile, souvent rempli d’essais et d’erreurs.

Ce guide a pour but de faciliter l’utilisation de Gerapy. A la fin de ce guide, vous serez capable de répondre aux questions suivantes.

- Pourquoi Gerapy ne fonctionne-t-il pas avec mon installation standard de Python ?
- Comment configurer Python et pip pour Gerapy ?
- Comment créer un compte administrateur ?
- Comment écrire mon premier scraper ?
- Comment puis-je dépanner mon scraper ?
- Comment tester et déployer mon scraper ?

## Introduction à Gerapy

Comprenons mieux ce qu’est Gerapy et ce qui la rend unique.

### Qu’est-ce que la gérontologie ?

Gerapy nous fournit un tableau de bord Django et l’API Scrapyd. Ces services vous donnent une interface simple mais puissante pour gérer votre pile. À ce stade, il s’agit d’un programme hérité, mais il améliore toujours le flux de travail et accélère le déploiement. Gerapy rend le scraping web plus accessible aux équipes orientées DevOps et gestion.

- Tableau de bord GUI pour la création et la surveillance de scrapers.
- Déployez un scraper en cliquant sur un bouton.
- Obtenez une visibilité en temps réel des journaux et des erreurs dès qu’elles se produisent.

### Qu’est-ce qui rend Gerapy unique ?

Gerapy vous offre un guichet unique pour la gestion des scrappers. La mise en place de Gerapy est un processus fastidieux en raison de son code hérité et de ses dépendances. Cependant, une fois que vous l’avez fait fonctionner, vous débloquez un ensemble complet d’outils conçus pour gérer les scrapeurs à grande échelle.

- Construisez vos scrapers à l’intérieur du navigateur.
- Déployez-les sur Scrapyd sans toucher à la ligne de commande.
- Gestion centralisée de tous vos crawlers et scrapers.
- Frontend construit sur Django pour la gestion des araignées.
- Backend alimenté par Scrapyd pour faciliter la construction et le déploiement.
- Planificateur intégré pour l’automatisation des tâches.

## Comment gratter le Web avec Gerapy

Le processus d’installation de Gerapy est laborieux. Il faut s’occuper de la dette technique et effectuer la maintenance du logiciel. Après de nombreux essais et erreurs, nous avons appris que Gerapy n’est même pas compatible avec les versions plus modernes de Python. Nous avons commencé avec une installation moderne de Python 3.13. **Elle était trop moderne pour les dépendances de Gerapy**. Nous avons essayé la version 3.12 – toujours pas de chance – juste plus de problèmes de dépendances.

Il s’est avéré que nous avions besoin de Python 3.10. En plus de cela, nous devions modifier une partie du code de Gerapy pour corriger une classe dépréciée – et **nous devions** ensuite **rétrograder manuellement presque toutes les dépendances de Gerapy**. Python a subi des changements significatifs au cours des trois dernières années et le développement de Gerapy n’a pas suivi. Nous devons recréer les conditions idéales de Gerapy d’il y a trois ans.

### Configuration du projet

#### Python 3.10

Pour commencer, nous devons installer Python 3.10. Cette version n’est pas éteinte, mais elle n’est plus largement disponible. Sur Ubuntu native et Windows WSL avec Ubuntu, elle peut être installée avec apt.

```none
sudo apt update
sudo apt install software-properties-common
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt update
sudo apt install python3.10 python3.10-venv python3.10-dev
```

Vous pouvez ensuite vérifier qu’il est installé avec l’option `--version.`

```none
python3.10 --version
```

Si tout se passe bien, vous devriez obtenir une sortie similaire à la sortie ci-dessous.

```none
Python 3.10.17
```

#### Création d’un dossier de projet

Créez d’abord un nouveau dossier.

```none
 mkdir gerapy-environment
```

Ensuite, nous devons `aller` dans le dossier de notre nouveau projet et configurer un environnement virtuel.

```none
cd gerapy-environment
python3.10 -m venv venv
```

Activer l’environnement.

```none
source venv/bin/activate
```

Une fois que votre environnement est actif, vous pouvez vérifier la version active de Python.

```none
python --version
```

Comme vous pouvez le voir, `python` est maintenant installé par défaut dans notre installation 3.10 à partir de l’environnement virtuel.

```none
Python 3.10.17
```

#### Installation des dépendances

La commande ci-dessous installe Gerapy et ses dépendances. Comme vous pouvez le voir, nous devons cibler manuellement de nombreux paquets hérités en utilisant `pip==`.

```none
pip install setuptools==80.8.0
pip install scrapy==2.7.1 gerapy==0.9.13 scrapy-splash==0.8.0 scrapy-redis==0.7.3 scrapyd==1.2.0 scrapyd-client==1.2.0 pyopenssl==23.2.0 cryptography==41.0.7 twisted==21.2.0
```

Nous allons maintenant créer un projet Gerapy avec la commande `init`.

```none
gerapy init
```

Ensuite, nous allons `aller` dans notre dossier `gerapy` et lancer `migrate` pour créer notre base de données.

```none
cd gerapy
gerapy migrate
```

Il est maintenant temps de créer un compte administrateur. Cette commande vous donne des privilèges d’administrateur par défaut.

```none
gerapy initadmin
```

Enfin, nous démarrons le serveur Gerapy.

```none
gerapy runserver
```

Vous devriez obtenir un résultat comme celui-ci.

```none
Watching for file changes with StatReloader
Performing system checks...

System check identified no issues (0 silenced).
INFO - 2026-05-24 13:49:16,241 - process: 1726 - scheduler.py - gerapy.server.core.scheduler - 105 - scheduler - successfully synced task with jobs with force
May 24, 2026 - 13:49:16
Django version 2.2.28, using settings 'gerapy.server.server.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
```

#### Utilisation du tableau de bord

Si vous visitez [http://127.0.0.1:8000/,](http://127.0.0.1:8000/) vous serez invité à vous connecter. Votre nom de compte par défaut est `admin` et votre mot de passe également. Une fois connecté, vous serez dirigé vers le tableau de bord de Gerapy.

![Tableau de bord de Gerapy](https://media.brightdata.com/2025/05/Gerapy-Dashboard.png)Cliquez sur l’onglet “Projets” et créez un nouveau projet. Nous l’appellerons ” `devis"`.

![Création d'un nouveau projet Gerapy](https://media.brightdata.com/2025/05/Creating-a-new-Gerapy-project.png)### Obtenir le site cible

Nous allons maintenant créer une nouvelle araignée. Dans votre nouveau projet, cliquez sur le bouton “add spider”. Dans la section “Start Urls”, ajoutez `https://quotes.toscrape.com.` Dans la section “Domaines”, entrez `quotes.toscrape.com.`

![Ajouter notre URL et notre domaine](https://media.brightdata.com/2025/05/Adding-our-URL-and-domain.png)### Logique d’extraction

Ensuite, nous ajouterons notre logique d’extraction. La fonction `parse()` ci-dessous utilise des sélecteurs CSS pour extraire les citations de la page. Pour en savoir plus sur les sélecteurs [, cliquez ici](/blog/donnees-web/xpath-vs-css-selectors).

Descendez jusqu’à la section “Inner Code” et ajoutez votre fonction d’analyse.

```none
def parse(self, response):
    quotes = response.css('div.quote')
    print(f"Found {len(quotes)} quotes")
    for quote in quotes:
        text = quote.css('span.text::text').get()
        author = quote.css('small.author::text').get()
        print(f"Text: {text}, Author: {author}")
        yield {
            'text': text,
            'author': author,
        }
```

Cliquez ensuite sur le bouton “Enregistrer” situé dans le coin inférieur droit de l’écran. Si vous exécutez le spider maintenant, vous rencontrerez une erreur critique. Gerapy essaie d’utiliser `BaseItem` de Scrapy. Cependant, `BaseItem` a été supprimé de Scrapy il y a plusieurs années.

![Erreur BaseItem](https://media.brightdata.com/2025/05/BaseItem-Error.png)### Correction de l’erreur BaseItem

Pour résoudre cette erreur, nous devons modifier le code interne de Scrapy. Vous pouvez le faire à partir de la ligne de commande. Cependant, il est beaucoup plus facile de le faire à partir d’un éditeur de texte à interface graphique doté de fonctions de recherche.

`cd` dans les fichiers sources de votre environnement virtuel.

```none
cd venv/lib/python3.10/site-packages/gerapy/server/core
```

Pour ouvrir le dossier dans VSCode, vous pouvez utiliser la commande ci-dessous.

```none
code .
```

Ouvrez le `fichier parser.py`, et vous trouverez notre coupable.

![Scrapy tente d'importer BaseItem](https://media.brightdata.com/2025/05/Scrapy-Tries-to-Import-BaseItem.png)Nous devons remplacer cette ligne par la suivante.

```none
from scrapy import Item
```

![Remplacement de BaseItem par Item dans notre
importations](https://media.brightdata.com/2025/05/Replacing-BaseItem-with-Item-in-Our.png)Maintenant que nous avons supprimé l’importation de `BaseItem`, nous devons supprimer toutes les instances de `BaseItem` avec `Item`. Notre seule instance se trouve dans la fonction `run_callback()`. Lorsque vous avez terminé d’enregistrer les modifications, fermez l’éditeur.

![Remplacement de BaseItem par Item dans tout le fichier](https://media.brightdata.com/2025/05/Replacing-BaseItem-with-Item-Throughout-the-File.png)Si vous exécutez votre spider, vous recevrez une nouvelle erreur.

![REQUEST_FINGERPRINTER_IMPLEMENTATION Erreur de dépréciation](https://media.brightdata.com/2025/05/REQUEST_FINGERPRINTER_IMPLEMENTATION-Deprecation-Error.png)### Correction de la dépréciation de REQUEST\_FINGERPRINTER\_IMPLEMENTATION

Ce n’est pas apparent, mais Gerapy injecte en fait nos paramètres directement dans notre spider. `cd` hors de notre dossier actuel et ensuite dans le dossier `projects.`

```none
cd
cd gerapy-environment/gerapy/projects/quotes
```

Ouvrez à nouveau votre éditeur de texte.

```none
code .
```

Ouvrez maintenant votre spider. Il devrait s’intituler `quotes.py` et se trouver dans le dossier `spiders`. Vous devriez voir votre fonction `parse()` à l’intérieur de la classe spider. Au bas du fichier, vous devriez voir un tableau appelé `custom_settings`. Nos paramètres ont été littéralement injectés dans le spider par Gerapy.

![Paramètres personnalisés de l'araignée](https://media.brightdata.com/2025/05/Custom-Spider-Settings.png)Nous devons ajouter un nouveau paramètre. Vous devez utiliser la `version 2.7`. La `version 2.6` continuera à générer l’erreur. Nous l’avons découvert après de nombreux essais et erreurs.

```none
"REQUEST_FINGERPRINTER_IMPLEMENTATION": "2.7",
```

Maintenant, lorsque vous exécutez le spider en utilisant le bouton play de Gerapy, toutes les erreurs sont résolues. Comme vous pouvez le voir ci-dessous, au lieu d’un message d’erreur, nous voyons juste un “Follow Request”.

![Notre Spider fonctionne désormais sans aucune erreur](https://media.brightdata.com/2025/05/Our-Spider-Now-Runs-Without-Any-Errors.png)## Tout assembler

### Construction du grattoir

Si vous retournez dans votre onglet “Projets” dans Gerapy, vous verrez un “X” dans la colonne “Construit” pour le projet. Cela signifie que notre scraper n’a pas été construit dans un fichier exécutable pour le déploiement.

![Notre projet de grattoir n'a pas été construit](https://media.brightdata.com/2025/05/Our-Scraper-Project-Hasnt-Been-Built.png)Cliquez sur le bouton “deploy”. Cliquez ensuite sur “build”.

![Le paquet se construit avec succès](https://media.brightdata.com/2025/05/The-package-successfully-builds.png)### Utilisation du planificateur

Pour programmer l’exécution de votre scraper à une heure ou à un intervalle spécifique, cliquez sur “Tâches” et créez une nouvelle tâche. Sélectionnez ensuite les paramètres souhaités pour la programmation.

![Établissement du calendrier](https://media.brightdata.com/2025/05/Setting-the-desired-schedule.png)Une fois que vous avez terminé, cliquez sur le bouton “créer”.

## Limites de l’utilisation de Gerapy

### Dépendances

Son code hérité introduit de nombreuses limitations que nous avons abordées de front dans cet article. Pour faire fonctionner Gerapy, nous avons dû modifier son code source interne. Si vous n’êtes pas à l’aise avec le code interne du système, Gerapy n’est pas fait pour vous. Vous vous souvenez de l’erreur `BaseItem`?

Alors que les dépendances de Gerapy continuent d’évoluer, Gerapy reste figé dans le temps. Pour continuer à l’utiliser, vous devrez maintenir votre installation personnellement. Cela ajoute une dette technique sous la forme de maintenance et d’un processus très réel d’essais et d’erreurs.

Rappelez-vous l’extrait ci-dessous. Chacun de ces numéros de version a été découvert grâce à un processus méticuleux d’essais et d’erreurs. Lorsque des dépendances se cassent, vous devez continuellement essayer différents numéros de version jusqu’à ce que vous obteniez une version fonctionnelle. Dans ce seul tutoriel, nous avons dû procéder par essais et erreurs pour trouver des versions fonctionnelles de 10 dépendances. Au fil du temps, la situation ne fera qu’empirer.

```none
pip install setuptools==80.8.0
pip install scrapy==2.7.1 gerapy==0.9.13 scrapy-splash==0.8.0 scrapy-redis==0.7.3 scrapyd==1.2.0 scrapyd-client==1.2.0 pyopenssl==23.2.0 cryptography==41.0.7 twisted==21.2.0
```

### Limites du système d’exploitation

Lorsque nous avons commencé ce tutoriel, nous avons essayé d’utiliser Windows en mode natif. C’est ainsi que nous avons découvert les limitations initiales dues aux versions de Python. Les versions stables actuelles de Python sont limitées à 3.9, 3.11 et 3.13. Gérer plusieurs versions de Python est difficile quel que soit le système d’exploitation. Cependant, Ubuntu nous offre le dépôt PPA `deadsnakes`.

Sans `deadsnakes`, il est possible de trouver une version compatible de Python, mais même dans ce cas, vous devez gérer les problèmes de PATH et faire la différence entre `python` (votre installation par défaut) et `python3.10.` Il est probablement possible de gérer cela de manière native depuis Windows et macOS, mais vous devrez trouver une solution de contournement différente. Avec Ubuntu et d’autres distributions Linux basées sur apt, vous disposez au moins d’un environnement reproductible avec un accès rapide aux anciennes versions de Python directement installées dans votre PATH.

## Intégration de Proxy avec Gerapy

Comme avec [Scrapy vanille](/integration/scrapy), l’intégration d’un proxy est facile à réaliser. Dans le véritable esprit de l’injection de paramètres de Gerapy, nous pouvons injecter un proxy directement dans le spider. Dans l’exemple ci-dessous, nous ajoutons les paramètres `HTTPPROXY_ENABLED` et `HTTPPROXY_PROXY` pour se connecter en utilisant [Web Unlocker](/products/web-unlocker).

```none
"HTTPPROXY_ENABLED": True,
"HTTPPROXY_PROXY": "http://brd-customer-<your-username>-zone-<your-zone-name>:<your-password>@brd.superproxy.io:33335"
```

Voici le spider complet après l’intégration du proxy. N’oubliez pas de remplacer le nom d’utilisateur, la zone et le mot de passe par les vôtres.

![Proxy Integrated Spider (araignée intégrée)](https://media.brightdata.com/2025/05/Proxy-integrated-spider.png)## Alternatives viables à Gerapy

- [Scrapyd](https://scrapyd.readthedocs.io/en/latest/): C’est l’épine dorsale de Gerapy et de toute autre pile Scrapy. Avec Scrapyd, vous pouvez tout gérer via de simples requêtes HTTP et construire un tableau de bord si vous le souhaitez.
- [Fonctions de scraping](/products/web-scraper/functions): Nos fonctions de scraping vous permettent de déployer vos scrapers directement sur le cloud et de les éditer à partir d’un IDE en ligne – avec un tableau de bord comme Gerapy mais plus flexible et moderne.

## Conclusion

Gerapy est un produit ancien dans un monde qui évolue rapidement. Il nécessite une réelle maintenance et vous devrez mettre les mains dans le cambouis. Des outils comme Gerapy vous permettent de centraliser votre environnement de scraping et de tout surveiller à partir d’un tableau de bord unique. Dans les cercles DevOps, Gerapy offre une utilité et une valeur réelles.

Si Scrapy n’est pas votre truc, nous proposons de nombreuses alternatives viables pour répondre à vos besoins en matière de collecte de données. Les produits ci-dessous n’en sont que quelques-uns.

- [Gratte-papier personnalisé](/products/web-scraper/custom): Créez des scraper sans code et déployez-les dans notre infrastructure en nuage.
- [Jeux de données](/products/datasets): Accédez à des ensembles de données historiques mis à jour quotidiennement et provenant de l’ensemble du web. Une bibliothèque de l’histoire de l’internet à portée de main.
- [Proxies résidentiels](/proxy-types/residential-proxies): Que vous préfériez écrire du code vous-même ou [faire du scrape avec l’IA](/blog/ai/best-ai-scraping-tools), nos proxies vous donnent accès à l’internet avec géo-ciblage sur une véritable connexion internet résidentielle.

Inscrivez-vous pour un essai gratuit dès aujourd’hui et faites passer votre collecte de données à la vitesse supérieure !



Contacter ventesEssai gratuit![google social icon](/wp-content/themes/brightdata/assets/images/ic_google.svg)









 Table des matières







Dedicated Scraper APIs &amp; No-Code Scrapers

Over 1000 scrapers for all popular domains. Simplify your web scraping.

[See pricing](/pricing/web-scraper "See pricing")

Just want data? Skip scraping.

Hundreds of ready-to-use datasets from all popular domains.

[See pricing](/pricing/datasets "See pricing")







 [ ](https://news.ycombinator.com/submitlink?t=Gerapy+Web+Scraping+%3A+Guide+de+d%C3%A9ploiement+de+Scrapy+en+pile+compl%C3%A8te&u=https://brightdata.fr/blog/donnees-web/web-scraping-with-gerapy) [ ](https://www.linkedin.com/shareArticle?mini=true&title=Gerapy+Web+Scraping+%3A+Guide+de+d%C3%A9ploiement+de+Scrapy+en+pile+compl%C3%A8te&url=https://brightdata.fr/blog/donnees-web/web-scraping-with-gerapy) [ ](http://www.reddit.com/submit?title=Gerapy+Web+Scraping+%3A+Guide+de+d%C3%A9ploiement+de+Scrapy+en+pile+compl%C3%A8te&url=https://brightdata.fr/blog/donnees-web/web-scraping-with-gerapy)







##  Vous pourriez aussi être intéressé par

 [ ![OpenHuman with Bright Data](https://media.brightdata.fr/2026/09/OpenHuman-with-Bright-Data.png) ](https://brightdata.fr/blog/ai/openhuman-with-bright-data "Accès Web Prêt pour la Production dans OpenHuman via le CLI Bright Data")

 [AI



 ![Antonello Zanini](https://media.brightdata.fr/2022/12/Antonello-Zanini-2-50x50.jpg)

Antonello Zanini

Technical Writer





### Accès Web Prêt pour la Production dans OpenHuman via le CLI Bright Data

Intégrez le CLI Bright Data avec OpenHuman pour permettre un accès web prêt pour la production et la collecte de données pour les agents IA.



 09-Sep-2026

 14 min de lecture

 ](https://brightdata.fr/blog/ai/openhuman-with-bright-data)

 [ ![Multimodal Web Scraping with MiniMax](https://media.brightdata.fr/2026/09/Multimodal-Web-Scraping-with-MiniMax.png) ](https://brightdata.fr/blog/donnees-web/multimodal-web-scraping-with-minimax "Scraping Web Multimodal avec MiniMax")

 [Données Web



 ![Antonello Zanini](https://media.brightdata.fr/2022/12/Antonello-Zanini-2-50x50.jpg)

Antonello Zanini

Technical Writer





### Scraping Web Multimodal avec MiniMax

Associez Bright Data Web Unlocker avec la vision MiniMax M3 pour extraire des données structurées à partir d’images et de captures d’écran de pages web.



 09-Sep-2026

 5 min de lecture

 ](https://brightdata.fr/blog/donnees-web/multimodal-web-scraping-with-minimax)

 [ ![The 10 Best CLI Tools for Codex in 2026](https://media.brightdata.fr/2026/08/The-10-Best-CLI-Tools-for-Codex-in-2026.png) ](https://brightdata.fr/blog/ai/best-cli-tools-for-codex "Les 10 meilleurs outils CLI pour Codex en 2026 – Testés & Classés")

 [AI



 ![Daniel Shashko](https://media.brightdata.fr/2022/04/Daniel-Shashko-2-50x50.png)

Daniel Shashko

Web Data &amp; AI Expert





### Les 10 meilleurs outils CLI pour Codex en 2026 – Testés &amp; Classés

Les 10 outils CLI qui rendent Codex plus rapide et plus capable, en commençant par le Bright Data CLI pour un accès web réel depuis l’intérieur du sandbox.



 06-Sep-2026

 24 min de lecture

 ](https://brightdata.fr/blog/ai/best-cli-tools-for-codex)
