Maison >développement back-end >Tutoriel Python >Comment créer un outil de raccourcissement d'URL simple avec Python
Un outil de raccourcissement d'URL permet aux utilisateurs de prendre une URL longue et de la convertir en un lien plus court et plus gérable. Nous pouvons créer une version simple de cet outil en utilisant Python et Flask, un framework Web léger.
Avant de commencer, assurez-vous d'avoir les éléments suivants :
Tout d'abord, vous devez créer un environnement virtuel et installer Flask. Ouvrez votre terminal et exécutez les commandes suivantes :
# Create a virtual environment python -m venv myenv # Activate the virtual environment # On Windows myenv\Scripts\activate # On macOS/Linux source myenv/bin/activate # Install Flask pip install Flask
Créez un répertoire pour votre projet, par exemple url_shortener, et à l'intérieur, créez un fichier Python appelé app.py. Nous allons diviser le code en sections.
from flask import Flask, request, redirect, url_for import string import random
Nous utiliserons un simple dictionnaire en mémoire pour stocker les mappages d'URL. Pour une solution plus robuste, vous pouvez utiliser une base de données comme SQLite ou PostgreSQL.
app = Flask(__name__) url_mapping = {}
Nous allons créer une fonction qui génère une clé URL courte.
def generate_short_url(): characters = string.ascii_letters + string.digits short_url = ''.join(random.choice(characters) for _ in range(6)) return short_url
Cette route prendra une URL longue de la part de l'utilisateur et renverra une version raccourcie.
@app.route('/shorten', methods=['POST']) def shorten_url(): original_url = request.form['url'] short_url = generate_short_url() url_mapping[short_url] = original_url return f'Shortened URL: {request.host_url}{short_url}'
Cette route redirigera les utilisateurs de l'URL courte vers l'URL longue d'origine.
@app.route('/<short_url>') def redirect_url(short_url): original_url = url_mapping.get(short_url) if original_url: return redirect(original_url) else: return 'URL not found', 404
if __name__ == "__main__": app.run(debug=True)
Enregistrez votre fichier app.py et exécutez-le depuis le terminal :
python app.py
Le serveur de développement Flask démarrera et vous pourrez accéder à l'outil de raccourcissement d'URL en accédant à http://127.0.0.1:5000 dans votre navigateur Web.
Pour raccourcir une URL, vous pouvez utiliser un outil comme curl ou un simple formulaire HTML. Voici un formulaire HTML de base à tester :
<!DOCTYPE html> <html> <head> <title>URL Shortener</title> </head> <body> <form action="http://127.0.0.1:5000/shorten" method="post"> <label for="url">Enter URL to shorten:</label> <input type="text" id="url" name="url"> <input type="submit" value="Shorten"> </form> </body> </html>
Enregistrez ce code HTML sous index.html et ouvrez-le dans votre navigateur Web. Entrez une URL pour raccourcir et soumettre le formulaire. Vous devriez voir une URL raccourcie que vous pouvez utiliser pour tester la fonctionnalité de redirection.
En suivant ces étapes, vous pouvez créer un simple outil de raccourcissement d'URL à l'aide de Python et Flask.
Cet outil peut être encore amélioré avec des fonctionnalités supplémentaires telles que l'authentification des utilisateurs, des analyses et une base de données pour stocker les mappages d'URL de manière persistante.
Vous voulez en savoir plus ? Découvrez des articles, des trucs et astuces sur la programmation sur ZeroByteCode.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!