Skip to content

Educational web scraping project using Python Scrapy to practice crawling and data extraction, cleaning, and storing structured book data in JSON format.

Notifications You must be signed in to change notification settings

malek-harbaoui/pythonScrapy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

📚 pythonScrapy – Web Scraping avec Scrapy

📌 Description du projet

pythonScrapy est un projet de web scraping développé en Python utilisant le framework Scrapy.
L’objectif du projet est de collecter automatiquement des données de livres à partir du site d’entraînement :

👉 Books to Scrape : http://books.toscrape.com/

Ce site est spécialement conçu pour l’apprentissage du web scraping et permet de pratiquer le crawling, l’extraction et le nettoyage des données de manière éthique.


🎯 Objectifs du projet

  • Explorer un site web Ă  l’aide de crawlers (spiders)
  • Extraire des informations structurĂ©es sur les livres
  • Nettoyer et transformer les donnĂ©es collectĂ©es
  • Stocker les donnĂ©es dans des fichiers JSON
  • Appliquer les bonnes pratiques du web scraping avec Scrapy

🛠️ Technologies utilisées

  • Python 3
  • Scrapy
  • JSON (stockage des donnĂ©es)
  • Crawlers / Spiders

đź“‚ Structure du projet

pythonScrapy/
│
├── bookscrapper/
│ ├── __init__.py
│ ├── items.py
│ ├── pipelines.py
│ ├── settings.py
│ ├── middlewares.py
│ ├── bookdata.json
│ ├── livredata.json
│ ├── cleandata.json
│ │
│ ├── spiders/
│ │ ├── __init__.py
│ │ └── bookspider.py
│
├── scrapy.cfg
└── README.md

đź“„ Description des principaux fichiers

  • bookspider.py :
    Contient le spider principal responsable du crawling et de l’extraction des données depuis le site.

  • items.py :
    Définit la structure des données extraites (champs des livres).

  • pipelines.py :
    Gère le traitement et le nettoyage des données avant leur stockage.

  • middlewares.py :
    Intercepte et traite les requêtes/réponses pendant le crawling.

  • settings.py :
    Configuration globale du projet Scrapy (user-agent, pipelines, etc.).

  • bookdata.json / livredata.json :
    Données brutes extraites depuis le site.

  • cleandata.json :
    Données nettoyées et prêtes à être utilisées pour l’analyse.


📊 Données collectées

Pour chaque livre, le spider peut extraire :

  • Titre du livre
  • Prix
  • DisponibilitĂ©
  • CatĂ©gorie
  • Note (rating)
  • Lien vers le livre

About

Educational web scraping project using Python Scrapy to practice crawling and data extraction, cleaning, and storing structured book data in JSON format.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages