---
type: archive
area: archive
status: archived
date: 2026-05-03
created: 2026-05-03
updated: 1980-01-01
tags:
  - archive
---
[[Contexte]]
### Defintion de Web crawling
- Le web crawling est une méthode utilisée pour explorer et récupérer des pages web afin d'extraire des données. C'est une étape clé du text mining, car elle permet d'acquérir des informations textuelles à partir de diverses sources en ligne. Le processus commence par des URLs de départ, à partir desquelles le crawler suit les liens pour découvrir de nouvelles pages.
### Defintion de crawler
- Un crawler est un programme qui parcourt le web pour collecter des informations en suivant les liens entre les pages.

### Présentation de l'architécture du système (inclue des brefs indication sur Requirement Analysis)
Avant de plonger dans l'architecture du système, il est essentiel de comprendre les besoins fondamentaux qui ont conduit à sa conception.
- **Améliorer la maîtrise de l'écriture en anglais**, qui est un indicateur clé des compétences linguistiques, en renforçant la grammaire, le vocabulaire et la structuration claire des idées.
- **Fournir un système d'assistance à l'écriture dépassant les simples corrections grammaticales**, en aidant les utilisateurs à développer leurs compétences, leur créativité et leur confiance.

### **Functional Module Design**
1. **English Exercise Collection and Generation**:
    - The central module of this platform automatically collects the latest English news articles from reputable sources like The New York Times and CNN.
    - Every night, the system retrieves headlines, summaries, and full articles, converting them into a structured format to populate an exercise database.
    - Using web crawling technology, it gathers relevant content from static web pages. This ensures users have access to up-to-date and diverse writing prompts based on real-world news.
2. **User Interface and Interaction**:  
    - Once registered, users are presented with a homepage that lists the most recent exercises and offers a search function.
    - The exercises are displayed in reverse chronological order (newest first), with options for users to sort or filter exercises by date or category.
    - The design of the website is minimalist and prioritizes ease of navigation, showing only essential details like exercise titles, timestamps, and categories.
3. **Summary Writing Exercise**:
    - A standout feature of the platform is its focus on summary writing, which helps users improve their ability to understand and concisely summarize article content.
    - The interface displays the article at the top, and users are expected to read and analyze the text before writing their summaries in a provided input box.
    - Upon submission, the system compares the user’s summary with a standard one, scoring the user's submission based on similarity. The system then displays the original summary for further comparison.
    - Users can also switch to another article by clicking the "Get Another Article" button, which generates a new exercise based on the current exercise’s theme or category.

### Explication du Schéma 1 :
#### 1. **Scrapy Engine (au centre)**
- Le **Scrapy engine** est comme le "cœur" du système. Il contrôle le flux de données entre toutes les parties du système et assure que tout fonctionne correctement ensemble. C'est lui qui orchestre le processus global.

#### 2. **Project (Projet)**
- Le **Project** représente ce que tu veux faire.

#### 3. **Dispatcher (Répartiteur)**
- Le **Dispatcher** est comme un organisateur.
- Il décide quelles pages web doivent être visitées et quel contenu doit être récupéré.
- Il répartit les tâches aux différentes parties du système.

#### 4. **Downloader (Téléchargeur)**
- Le **Downloader** est celui qui va sur le site web pour récupérer les pages dont tu as besoin. 

#### 5. **Data Climbing (Extraction des Données)**
- **Data Climbing** (parfois appelé "spider" ou "araignée" en Scrapy) est le processus d'extraction des données spécifiques que tu recherches.

#### 6. **Systèmes Intermédiaires**
- Les **systèmes intermédiaires** (les cylindres gris sur le schéma) sont des endroits où les données ou les tâches sont temporairement stockées.

#### 7. **Flux des Données**
- Le flux des données suit une boucle :
    1. Le **Project** définit ce qu'il faut extraire.
    2. Le **Dispatcher** envoie des instructions sur les pages à scrapper.
    3. Le **Downloader** récupère le contenu de ces pages.
    4. Le système **Data Climbing** extrait les informations voulues.
    5. Ces informations sont ensuite stockées et le cycle continue.

[[Critique]]
